NHS MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| datasets_listA | List all available datasets on the NHSBSA Open Data Portal. Returns dataset names, descriptions, and resource counts. Optionally filter by a search term matching title or description. |
| datasets_metadataA | Get detailed metadata for a specific NHS dataset, including its resources (data files) with their IDs. Use the resource ID with the datasets_query tool to query the actual data. |
| datasets_queryA | Query a specific dataset resource on the NHSBSA Open Data Portal by resource ID. Use datasets_metadata first to find resource IDs for a dataset. Supports filtering by field values, pagination with limit and offset. |
| prescriptions_searchA | Search NHS prescribing data from the English Prescribing Dataset (EPD). Find prescription records by BNF code, drug name, practice code, or time period. Returns items dispensed, quantities, and costs. At least one search parameter should be provided. |
| prescriptions_cost_analysisA | Get prescription cost statistics from the national Prescription Cost Analysis (PCA) dataset. Shows aggregate costs and volumes at the national level (not by practice). Use prescriptions_search for practice-level data instead. |
| prescriptions_spending_trendsA | Analyse prescribing spending trends over time for a drug or BNF category. Data sourced from OpenPrescribing (last 5 years of monthly data). Returns monthly items, quantities, and costs. Can be filtered by organisation (Sub-ICB Location or practice). |
| organisations_searchA | Search for NHS organisations (GP practices, trusts, ICBs, pharmacies, etc.) by name, role, or postcode using the ODS ORD directory. Returns ODS codes, names, statuses, and primary roles. At least one search parameter (name, role, or postcode) is required. |
| organisations_getA | Get full details for a specific NHS organisation by its ODS code. Returns name, address, roles, relationships, and succession history. Use organisations_search first to find the ODS code. |
| organisations_relationshipsA | Get the relationships for a specific NHS organisation (e.g., which ICB commissions a GP practice, which region a trust belongs to). Returns relationship types, target organisations, and status. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| analyse-prescribing | Guide the AI through a prescribing trend analysis workflow — spending trends, regional comparisons, and practice-level data for a drug or BNF category. |
| compare-regions | Compare prescribing patterns across NHS regions or practices for a given drug — identify variation in prescribing rates and costs. |
| organisation-lookup | Walk through finding and exploring an NHS organisation — its details, relationships, and associated prescribing data. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| datasets | Catalogue of all available NHS datasets on the NHSBSA Open Data Portal |
| organisation-roles | List of valid ODS organisation role IDs and their descriptions. Use these role IDs with the organisations_search tool to filter by organisation type. |
| bnf-codes | BNF (British National Formulary) code reference showing the therapeutic classification hierarchy. Lists common top-level BNF sections and example codes for use with prescribing tools. |
TDQS
Scored across 9 tools
Each tool targets a distinct resource (prescriptions, datasets, organisations) and operation (trends, search, metadata, query, relationships). Even the prescribing tools are clearly differentiated by granularity: time-series trends, record-level search, and national aggregate statistics.
Tool names follow a consistent domain_suffix pattern in snake_case with a clear domain prefix. However, some suffixes are nouns (datasets_metadata, organisations_relationships) rather than verbs, introducing a minor inconsistency in the naming scheme.
Nine tools is an appropriate count, comfortably within the ideal range. Each tool serves a clear purpose, covering three distinct domains, with no redundancy.
The tool surface provides comprehensive coverage for the stated NHS data domains: prescribing data (search, trends, cost analysis), open data portal (list, metadata, query), and organisation directory (search, details, relationships). It enables complete discovery and access workflows.