Skip to main content
Glama

nhs-intelligence-mcp

MCP-сервер, предоставляющий инструменты NHS для анализа времени ожидания и аналитики по трастам, чтобы агентный клиент (Claude Code, Claude Desktop или любой MCP-совместимый хост) мог отвечать на открытые вопросы об эффективности провайдеров NHS, опираясь на реальные публичные данные.

Сервер предоставляет только инструменты данных и анализа; он никогда не вызывает LLM. Агентные рассуждения выполняются в подключающемся клиенте, который выстраивает из этих инструментов цепочки. Благодаря этому числа остаются детерминированными, а весь сервер можно юнит-тестировать офлайн.

Статус

Этап 3. Пять инструментов на трёх источниках данных: тренд RTT, текущее состояние My Planned Care (поиск и ранжирование), рейтинги качества CQC и комбинированный trust_profile, объединяющий все три. Каждый инструмент полностью реализован и покрыт офлайн-набором тестов (57 тестов).

Примечание об идентификации трастов

Три источника по-разному называют трасты: RTT использует числовой код провайдера (например, RGT), My Planned Care — название траста (например, Guy's and St Thomas'), CQC — собственный идентификатор провайдера (например, 1-101681210). Инструменты, работающие с одним источником, используют тот идентификатор, который публикует их источник. trust_profile согласует все три идентификатора на основе курируемого файла сопоставлений; траст, отсутствующий в сопоставлении, возвращает found=false. Рейтинговые данные являются дополнительными: если фид CQC недоступен, профиль исключает этот раздел и всё равно возвращает данные о времени ожидания и тренде.

Related MCP server: NHS MCP Server

Проектирование

src/nhs_intel/
  domain/      # immutable value objects (WaitTimePoint, TrustRating, ...)
  sources/     # adapters behind Protocols (CSV feeds, CQC HTTP, identity map)
  analysis/    # pure trend, ranking and profile-join logic
  server.py    # thin FastMCP layer: validate -> pure handler -> serialise

Чистое ядро (domain, analysis) не выполняет операций ввода-вывода и не имеет MCP-импортов, поэтому оно работает в CI без сети и без живого фида NHS. Каждый источник находится за Protocol, включая HTTP-клиент CQC, поэтому тесты внедряют фейковые объекты в памяти, и набор тестов полностью офлайн. Это граница портов и адаптеров из nhs-webscraper, применённая к фидам данных.

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

Источник

Частота

Роль

Доступ

NHS England RTT

Ежемесячно

Основа тренда

CSV-кэш

My Planned Care (через nhs-webscraper)

Еженедельно

Слой текущего состояния

CSV

Рейтинги CQC

Ежедневно

Контекст качества траста

Публичный API, без ключа

Инструменты

Инструмент

Ввод

Возвращает

wait_time_trend

provider_code, specialty

начальное/конечное время ожидания, дельта, % изменения, направление, помесячный ряд (RTT)

lookup_wait_time

provider (название), specialty

актуальное время ожидания для одного траста (My Planned Care)

rank_trusts_by_wait

specialty, region?, limit?

трасты, ранжированные по текущему времени ожидания, от наибольшего к наименьшему (My Planned Care)

get_trust_rating

cqc_provider_id

общий и по доменам рейтинги CQC

trust_profile

identifier, specialty, by_name?

объединённые текущее время ожидания, тренд и рейтинг для одного траста

Направление тренда определяется относительной мёртвой зоной (по умолчанию 5%), поэтому небольшое колебание при длительном ожидании воспринимается как flat, а не как ложный тренд: то же решение по подавлению шума, что и в проекте MRR-prediction. При ранжировании трасты, публикующие специальность, но не публикующие показатель, перечисляются после ранжированных, что сохраняет пробелы в покрытии видимыми и не позволяет спутать их с нулевым временем ожидания.

Запуск

Зависимости управляются с помощью uv и зафиксированы в uv.lock; рядом с ним экспортируется обычный requirements.txt для тех, у кого нет uv.

# uv resolves and creates .venv automatically from uv.lock:
uv sync --extra dev

# Point the server at an ingested RTT CSV cache (provider_code,specialty,weeks,as_of):
export NHS_INTEL_RTT_CSV=tests/fixtures/rtt_sample.csv

# Optional: My Planned Care scraper output for the current-state tools.
export NHS_INTEL_PLANNED_CARE_CSV=tests/fixtures/planned_care_sample.csv

# Optional: cross-source identity mapping for trust_profile.
export NHS_INTEL_IDENTITY_CSV=tests/fixtures/identity_sample.csv

# Optional: a partnerCode string sent with CQC requests to identify your caller.
export NHS_INTEL_CQC_PARTNER_CODE=my-org

# Run the MCP server over stdio:
uv run nhs-intel-mcp

Без uv: выполните pip install -r requirements.txt, затем запустите nhs-intel-mcp напрямую, с теми же заданными переменными окружения.

Требуется только NHS_INTEL_RTT_CSV; каждый инструмент чётко сообщает, когда его источник не настроен, а фид CQC при недоступности просто оставляет раздел рейтинга отсутствующим. .mcp.json регистрирует сервер для Claude Code с помощью uv run, поэтому используется собственное окружение проекта независимо от того, что активно в вызывающей оболочке.

Разработка

uv sync --extra dev
uv run pytest    # offline, no network or keys required
uv run ruff check .
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
2dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables querying of current A\&E waiting times, specialist outpatient waiting times, and general outpatient clinic quotas in Hong Kong using natural language through MCP.
    3
    4
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to query NHS public health datasets, including prescribing data, dataset exploration, and organisation lookup via the NHSBSA Open Data Portal.
    9
  • A
    license
    Not graded
    quality
    B
    maintenance
    MCP server for the Semble practice-management API, enabling AI agents to search for patients, contacts, and users, as well as retrieve patient relationships via read-only tools.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables querying the Polish National Health Fund (NFZ) public API for medical waiting lists and service dictionary, allowing AI to compare wait times and find providers.
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Hosted MCP server exposing US hospital procedure cost data to AI assistants

  • UK NIHR (National Institute for Health and Care Research) open-data MCP.

  • Hosted MCP endpoint with realistic fake data for prototyping agents. 12 tools, no setup.

View all MCP Connectors

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/Roberto-Pecora/nhs-intelligence-mcp'

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