SNOMED CT MCP服务器
一种模型上下文协议(MCP)服务器,提供对SNOMED CT术语服务的访问。此服务器可以部署在Cloudflare Workers上,用于对SNOMED CT数据进行可扩展的无服务器访问。
特性
- 搜索概念:按术语搜索SNOMED CT概念
- 概念细节:获取有关特定概念的详细信息
- 描述:检索概念的所有描述
- 关系:获取概念关系和层次结构
- 导航:浏览概念儿童和家长
- ECL支持:使用表达式约束语言搜索
可用工具
search_concepts-按术语搜索概念get_concept-按ID获取概念细节get_concept_descriptions-获取概念的所有描述get_concept_relationships-获取概念关系get_concept_children-获取儿童概念get_concept_parents-获取父概念search_by_ecl-使用ECL表达式搜索
安装
先决条件
- Node.js 20或更高版本
- npm或纱线
- 克劳德桌面应用程序
从GitHub安装
- 克隆存储库:
git clone https://github.com/yourusername/snomed-mcp-server.git
cd snomed-mcp-server- 安装依赖项:
npm install- 构建项目:
npm run build配置Claude桌面
- 打开您的Claude Desktop配置文件:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 视窗: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json
- 将SNOMED MCP服务器添加到您的配置中:
{
"mcpServers": {
"snomed-mcp-server": {
"command": "node",
"args": ["path/to/snomed-mcp-server/dist/index.js"]
}
}
}重要:替换 path/to/snomed-mcp-server 使用克隆存储库的实际路径。
- 重新启动克劳德桌面 以使更改生效。
验证安装
重新启动Claude Desktop后,您应该看到以下SNOMED CT工具可用:
search_concepts-搜索SNOMED CT概念get_concept-获取详细的概念信息get_concept_descriptions-获取概念描述get_concept_relationships-获取概念关系get_concept_children-获取儿童概念get_concept_parents-获取父概念search_by_ecl-使用ECL表达式搜索
发展
在本地运行:
npm run dev构建:
npm run build部署到Cloudflare Workers
- 安装牧马人CLI:
npm install -g wrangler- 登录Cloudflare:
wrangler auth login- 部署:
npm run deploy使用示例
截图
搜索概念
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "search_concepts",
"arguments": {
"term": "heart attack",
"limit": 10
}
}
}获取概念细节
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "get_concept",
"arguments": {
"conceptId": "22298006"
}
}
}使用ECL搜索
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "search_by_ecl",
"arguments": {
"ecl": "< 404684003",
"limit": 20
}
}
}API终点
服务器使用SNOMED国际公共术语服务器:
- 基本URL:
https://browser.ihtsdotools.org/snowstorm/snomed-ct/MAIN - 查找 URL :
https://snowstorm.ihtsdotools.org/fhir
故障排除
MCP服务器未出现在Claude桌面中
- 检查配置文件路径:确保您正在为操作系统编辑正确的配置文件
- 验证JSON语法:确保你的
claude_desktop_config.json具有有效的JSON语法 - 检查文件路径:确保路径
dist/index.js是正确和绝对的 - 需要重启:配置更改后始终重新启动Claude Desktop
- 先建造:运行
npm run build在配置Claude Desktop之前
连接问题
- 检查构建输出:确保
dist/index.js运行后存在npm run build - 本地测试:运行
npm run dev在本地测试服务器 - Node.js版本:确保您使用的是Node.js 20或更高版本
- 权限:确保Claude Desktop可以访问文件路径
常见配置错误
- 在配置中使用相对路径而不是绝对路径
- 更改后忘记重新启动Claude Desktop
- 缺少构建步骤(
npm run build) - 配置文件中的JSON语法错误
获取帮助
如果您继续遇到问题:
- 检查克劳德桌面日志
- 验证服务器是否运行
npm run dev - 确保所有文件路径正确且可访问
许可证
麻省理工学院
贡献
- 分叉存储库
- 创建要素分支
- 进行更改
- 提交拉取请求
免责声明
此服务器使用SNOMED国际公共术语服务器作为参考。它不适用于生产医疗保健系统。请参阅SNOMED International的商业使用许可条款。
