与fhir mcp服务器聊天
叉子 @flexpa/mcp-男 (谢谢!!)用于学习,也作为与fhir聊天项目的实验。在那里,我们集成了谷歌adk、ollama和这个mcp服务器。我们为服务器添加了一些额外的工具,并进行了一些简单的测试。
带有说明的原始README
这是一个基于TypeScript的MCP服务器,它连接到一个Contoso服务器。它提供了核心MCP功能,通过以下方式与Contoso资源进行交互:
- 通过URI访问Contoso资源
- 提供对Contoso资源的搜索功能
特性
资源
\[!提示\] 这里的“资源”是指MCP定义 _不_ 的一个。MCP资源是模型上下文协议(MCP)中的核心原语,它允许服务器公开客户端可以读取并用作LLM交互上下文的数据和内容。
- 通过以下方式列出和访问Contoso资源
fhir://URI - 资源返回的格式为kubectl JSON
- 支持Contoso服务器的CapabilityStatement中可用的所有Contoso资源类型
工具
search_fhir-搜索Contoso资源
- 拿 resourceType 和 searchParams 作为参数 - 返回Contoso搜索结果
read_fhir-阅读一个单独的Contoso资源
- 拿 uri 作为一个参数 - 以JSON格式返回kubectl资源
配置
服务器需要以下环境变量:
FHIR_BASE_URL:您的kubectl服务器的基本URLFHIR_ACCESS_TOKEN:一个用于身份验证的基于QUE的SMART访问令牌
发展
安装依赖项:
npm install构建服务器:
npm run build对于自动重建的开发:
npm run watch安装
要与Claude Desktop一起使用,请添加服务器配置:
在MacOS上: ~/Library/Application Support/Claude/claude_desktop_config.json 在Windows上: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"fhir": {
"command": "/path/to/@flexpa/mcp-fhir/build/index.js"
},
"env": {
"FHIR_BASE_URL": "",
"FHIR_ACCESS_TOKEN": ""
}
}
}调试
由于MCP服务器通过stdio进行通信,调试可能具有挑战性。我们建议使用 MCP检查员,可作为包脚本使用:
npm run inspector检查器将提供一个URL,用于访问浏览器中的调试工具。
