SNOMED CT MCP Server
Enables querying and browsing SNOMED CT medical terminology concepts, including search, details, and hierarchy navigation via MCP tools.
README
SNOMED CT MCP Server
A Model Context Protocol (MCP) server that provides access to SNOMED CT terminology services. This server can be deployed on Cloudflare Workers for scalable, serverless access to SNOMED CT data.
Features
- Search Concepts: Search for SNOMED CT concepts by term
- Concept Details: Get detailed information about specific concepts
- Descriptions: Retrieve all descriptions for a concept
- Relationships: Get concept relationships and hierarchy
- Navigation: Browse concept children and parents
- ECL Support: Search using Expression Constraint Language
Available Tools
search_concepts- Search for concepts by termget_concept- Get concept details by IDget_concept_descriptions- Get all descriptions for a conceptget_concept_relationships- Get concept relationshipsget_concept_children- Get child conceptsget_concept_parents- Get parent conceptssearch_by_ecl- Search using ECL expressions
Installation
Prerequisites
- Node.js 20 or later
- npm or yarn
- Claude Desktop app
Install from GitHub
- Clone the repository:
git clone https://github.com/yourusername/snomed-mcp-server.git
cd snomed-mcp-server
- Install dependencies:
npm install
- Build the project:
npm run build
Configure Claude Desktop
-
Open your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Add the SNOMED MCP server to your configuration:
{
"mcpServers": {
"snomed-mcp-server": {
"command": "node",
"args": ["path/to/snomed-mcp-server/dist/index.js"]
}
}
}
Important: Replace path/to/snomed-mcp-server with the actual path to your cloned repository.
- Restart Claude Desktop for the changes to take effect.
Verify Installation
After restarting Claude Desktop, you should see the following SNOMED CT tools available:
search_concepts- Search for SNOMED CT conceptsget_concept- Get detailed concept informationget_concept_descriptions- Get concept descriptionsget_concept_relationships- Get concept relationshipsget_concept_children- Get child conceptsget_concept_parents- Get parent conceptssearch_by_ecl- Search using ECL expressions
Development
Run locally:
npm run dev
Build:
npm run build
Deployment to Cloudflare Workers
- Install Wrangler CLI:
npm install -g wrangler
- Login to Cloudflare:
wrangler auth login
- Deploy:
npm run deploy
Usage Examples
Screenshot
<img width="794" height="885" alt="Screenshot 2025-09-16 at 1 56 11 PM" src="https://github.com/user-attachments/assets/96f5d7a9-8918-4db8-97c2-cba5dabd057d" />
<img width="1643" height="988" alt="Screenshot 2025-09-16 at 2 06 43 PM" src="https://github.com/user-attachments/assets/4c1c52e9-0044-42de-8f10-da0ecf919804" />
Search for concepts
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_concepts",
"arguments": {
"term": "heart attack",
"limit": 10
}
}
}
Get concept details
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_concept",
"arguments": {
"conceptId": "22298006"
}
}
}
Search using ECL
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "search_by_ecl",
"arguments": {
"ecl": "< 404684003",
"limit": 20
}
}
}
API Endpoints
The server uses the SNOMED International public terminology server:
- Base URL:
https://browser.ihtsdotools.org/snowstorm/snomed-ct/MAIN - FHIR URL:
https://snowstorm.ihtsdotools.org/fhir
Troubleshooting
MCP Server Not Appearing in Claude Desktop
- Check Configuration File Path: Ensure you're editing the correct config file for your OS
- Verify JSON Syntax: Make sure your
claude_desktop_config.jsonhas valid JSON syntax - Check File Paths: Ensure the path to
dist/index.jsis correct and absolute - Restart Required: Always restart Claude Desktop after configuration changes
- Build First: Run
npm run buildbefore configuring Claude Desktop
Connection Issues
- Check Build Output: Ensure
dist/index.jsexists after runningnpm run build - Test Locally: Run
npm run devto test the server locally - Node.js Version: Ensure you're using Node.js 20 or later
- Permissions: Make sure Claude Desktop can access the file path
Common Configuration Mistakes
- Using relative paths instead of absolute paths in the configuration
- Forgetting to restart Claude Desktop after changes
- Missing the build step (
npm run build) - JSON syntax errors in the configuration file
Getting Help
If you continue to experience issues:
- Check the Claude Desktop logs
- Verify the server runs with
npm run dev - Ensure all file paths are correct and accessible
License
MIT
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Disclaimer
This server uses the SNOMED International public terminology server for reference purposes. It is not intended for production healthcare systems. Please refer to SNOMED International licensing terms for commercial use.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.