Skip to main content
Glama

Сервер MCP для здравоохранения

значок кузнеца Сервер протокола контекста модели (MCP), предоставляющий помощникам на базе искусственного интеллекта доступ к данным здравоохранения и инструментам медицинской информации.

Обзор

Healthcare MCP Server — специализированный сервер, реализующий протокол контекста модели (MCP) для предоставления помощникам ИИ доступа к данным здравоохранения и инструментам медицинской информации. Он позволяет моделям ИИ извлекать точную и актуальную медицинскую информацию из авторитетных источников.

Related MCP server: MCP Toolkit

Функции

  • Информация о лекарственных препаратах FDA : поиск и извлечение полной информации о лекарственных препаратах из базы данных FDA.

  • PubMed Research : Поиск медицинской литературы в базе данных научных статей PubMed.

  • Темы здравоохранения : доступ к научно обоснованной информации о здоровье на Health.gov

  • Клинические испытания : Поиск текущих и завершенных клинических испытаний

  • Медицинская терминология : поиск кодов МКБ-10 и определений медицинской терминологии.

  • Кэширование : эффективная система кэширования с пулом соединений для сокращения вызовов API и повышения производительности.

  • Отслеживание использования : анонимное отслеживание использования для мониторинга использования API

  • Обработка ошибок : надежная обработка и ведение журнала ошибок.

  • Несколько интерфейсов : поддержка интерфейсов stdio (для CLI) и HTTP/SSE

  • Документация API : интерактивная документация API с пользовательским интерфейсом Swagger

  • Комплексное тестирование : обширный набор тестов с pytest и отчетами о покрытии

Установка

Установка через Smithery

Чтобы автоматически установить сервер медицинских данных и медицинской информации для Claude Desktop через Smithery :

npx -y @smithery/cli install @Cicatriiz/healthcare-mcp-public --client claude

Ручная установка

  1. Клонируйте репозиторий:

    git clone https://github.com/Cicatriiz/healthcare-mcp-public.git
    cd healthcare-mcp-public
  2. Создайте виртуальную среду:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Установить зависимости:

    pip install -r requirements.txt
  4. Настройте переменные среды (необязательно):

    # Create .env file from example
    cp .env.example .env
    # Edit .env with your API keys (optional)
  5. Запускаем сервер:

    python run.py

Использование

Работа в различных видах транспорта

  • Режим stdio (по умолчанию, для Cline):

    python run.py
  • Режим HTTP/SSE (для веб-клиентов):

    python run.py --http --port 8000

Тестирование инструментов

Вы можете протестировать инструменты MCP с помощью нового тестового набора на основе pytest:

# Run all tests with pytest and coverage
python -m tests.run_tests --pytest

# Run a specific test file
python -m tests.run_tests --test test_fda_tool.py

# Test the HTTP server
python -m tests.run_tests --server --port 8000

Для обеспечения обратной совместимости вы по-прежнему можете запускать старые тесты:

# Run all tests (old style)
python -m tests.run_tests

# Test individual tools (old style)
python -m tests.run_tests --fda        # Test FDA drug lookup
python -m tests.run_tests --pubmed     # Test PubMed search
python -m tests.run_tests --health     # Test Health Topics
python -m tests.run_tests --trials     # Test Clinical Trials search
python -m tests.run_tests --icd        # Test ICD-10 code lookup

Ссылка на API

Сервер Healthcare MCP предоставляет как программный API для прямой интеграции, так и RESTful HTTP API для веб-клиентов.

Конечные точки RESTful API

При работе в режиме HTTP доступны следующие конечные точки:

Проверка здоровья

GET /health

Возвращает состояние сервера и его служб.

Поиск лекарств FDA

GET /api/fda?drug_name={drug_name}&search_type={search_type}

Параметры:

  • drug_name : Название препарата для поиска

  • search_type : Тип информации для извлечения

    • general : Основная информация о препарате (по умолчанию)

    • label : Информация о маркировке лекарственных средств

    • adverse_events : Зарегистрированные неблагоприятные события

Пример ответа:

{
  "status": "success",
  "drug_name": "aspirin",
  "search_type": "general",
  "total_results": 25,
  "results": [
    {
      "brand_name": "ASPIRIN",
      "generic_name": "ASPIRIN",
      "manufacturer": "Bayer Healthcare",
      "product_type": "HUMAN OTC DRUG",
      "route": "ORAL",
      "active_ingredients": [
        {
          "name": "ASPIRIN",
          "strength": "325 mg/1"
        }
      ]
    }
  ]
}

Поиск PubMed

GET /api/pubmed?query={query}&max_results={max_results}&date_range={date_range}

Параметры:

  • query : Поисковый запрос по медицинской литературе

  • max_results : Максимальное количество возвращаемых результатов (по умолчанию: 5, максимум: 50)

  • date_range : Ограничить статьями, опубликованными в течение нескольких лет (например, «5» для последних 5 лет)

Пример ответа:

{
  "status": "success",
  "query": "diabetes treatment",
  "total_results": 123456,
  "date_range": "5",
  "articles": [
    {
      "pmid": "12345678",
      "title": "New advances in diabetes treatment",
      "authors": ["Smith J", "Johnson A"],
      "journal": "Journal of Diabetes Research",
      "publication_date": "2023-01-15",
      "abstract": "This study explores new treatment options...",
      "url": "https://pubmed.ncbi.nlm.nih.gov/12345678/"
    }
  ]
}

Темы о здоровье

GET /api/health_finder?topic={topic}&language={language}

Параметры:

  • topic : Здоровье тема для поиска информации

  • language : язык для контента (en или es, по умолчанию: en)

Пример ответа:

{
  "status": "success",
  "search_term": "diabetes",
  "language": "en",
  "total_results": 15,
  "topics": [
    {
      "title": "Diabetes Type 2",
      "url": "https://health.gov/myhealthfinder/topics/health-conditions/diabetes/diabetes-type-2",
      "last_updated": "2023-05-20",
      "section": "Health Conditions",
      "description": "Information about managing type 2 diabetes",
      "content": ["Diabetes is a disease...", "Treatment options include..."]
    }
  ]
}

Поиск клинических испытаний

GET /api/clinical_trials?condition={condition}&status={status}&max_results={max_results}

Параметры:

  • condition : Медицинское состояние или заболевание, которое нужно найти

  • status : Статус испытания (набор, завершен, активен, не_набор или все)

  • max_results : Максимальное количество возвращаемых результатов (по умолчанию: 10, максимум: 100)

Пример ответа:

{
  "status": "success",
  "condition": "breast cancer",
  "search_status": "recruiting",
  "total_results": 256,
  "trials": [
    {
      "nct_id": "NCT12345678",
      "title": "Study of New Treatment for Breast Cancer",
      "status": "Recruiting",
      "phase": "Phase 2",
      "study_type": "Interventional",
      "conditions": ["Breast Cancer", "HER2-positive Breast Cancer"],
      "locations": [
        {
          "facility": "Memorial Hospital",
          "city": "New York",
          "state": "NY",
          "country": "United States"
        }
      ],
      "sponsor": "National Cancer Institute",
      "url": "https://clinicaltrials.gov/study/NCT12345678",
      "eligibility": {
        "gender": "Female",
        "min_age": "18 Years",
        "max_age": "75 Years",
        "healthy_volunteers": "No"
      }
    }
  ]
}

Поиск кода МКБ-10

GET /api/medical_terminology?code={code}&description={description}&max_results={max_results}

Параметры:

  • code : код МКБ-10 для поиска (необязательно, если указано описание)

  • description : Описание медицинского состояния для поиска (необязательно, если указан код)

  • max_results : Максимальное количество возвращаемых результатов (по умолчанию: 10, максимум: 50)

Пример ответа:

{
  "status": "success",
  "search_type": "description",
  "search_term": "diabetes",
  "total_results": 25,
  "codes": [
    {
      "code": "E11",
      "description": "Type 2 diabetes mellitus",
      "category": "Endocrine, nutritional and metabolic diseases"
    },
    {
      "code": "E10",
      "description": "Type 1 diabetes mellitus",
      "category": "Endocrine, nutritional and metabolic diseases"
    }
  ]
}

Исполнение универсального инструмента

POST /mcp/call-tool

Текст запроса:

{
  "name": "fda_drug_lookup",
  "arguments": {
    "drug_name": "aspirin",
    "search_type": "general"
  },
  "session_id": "optional-session-id"
}

Программный API

При программном использовании сервера MCP доступны следующие функции:

Поиск лекарств FDA

fda_drug_lookup(drug_name: str, search_type: str = "general")

Параметры:

  • drug_name : Название препарата для поиска

  • search_type : Тип информации для извлечения

    • general : Основная информация о препарате (по умолчанию)

    • label : Информация о маркировке лекарственных средств

    • adverse_events : Зарегистрированные неблагоприятные события

Поиск PubMed

pubmed_search(query: str, max_results: int = 5, date_range: str = "")

Параметры:

  • query : Поисковый запрос по медицинской литературе

  • max_results : Максимальное количество возвращаемых результатов (по умолчанию: 5)

  • date_range : Ограничить статьями, опубликованными в течение нескольких лет (например, «5» для последних 5 лет)

Темы о здоровье

health_topics(topic: str, language: str = "en")

Параметры:

  • topic : Здоровье тема для поиска информации

  • language : язык для контента (en или es, по умолчанию: en)

Поиск клинических испытаний

clinical_trials_search(condition: str, status: str = "recruiting", max_results: int = 10)

Параметры:

  • condition : Медицинское состояние или заболевание, которое нужно найти

  • status : Статус испытания (набор, завершен, активен, не_набор или все)

  • max_results : Максимальное количество возвращаемых результатов

Поиск кода МКБ-10

lookup_icd_code(code: str = None, description: str = None, max_results: int = 10)

Параметры:

  • code : код МКБ-10 для поиска (необязательно, если указано описание)

  • description : Описание медицинского состояния для поиска (необязательно, если указан код)

  • max_results : Максимальное количество возвращаемых результатов

Источники данных

Этот сервер MCP использует несколько общедоступных API-интерфейсов здравоохранения:

Премиум-версия (еще в разработке)

Это бесплатная версия Healthcare MCP Server с ограничениями на использование. Для расширенных функций и более высоких ограничений на использование ознакомьтесь с нашей премиум-версией:

  • Неограниченные вызовы API

  • Расширенные инструменты обработки данных в здравоохранении

  • Индивидуальные интеграции

  • Приоритетная поддержка

Лицензия

Лицензия Массачусетского технологического института

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Cicatriiz/healthcare-mcp-public'

If you have feedback or need assistance with the MCP directory API, please join our Discord server