CMS Data.gov MCP服务器
模型上下文协议(MCP)服务器,为Claude和其他MCP客户端提供从data.CMS.gov直接访问CMS(医疗保险和医疗补助服务中心)医疗保健数据的权限。
概述
此MCP服务器使AI助手能够:
- 搜索和发现CMS医疗保健数据集
- 使用过滤器和分页查询数据集记录
- 获取数据集统计信息和元数据
- 获取CSV下载链接以进行大规模分析
非常适合医疗分析工作流程,特别是在处理LEJR(下肢关节置换术)分析、提供者注册数据、医院质量指标和其他CMS数据集时。
特性
五个核心工具
- cms_search_datasets -按关键字或主题查找数据集
- cms_get_dataset -获取详细的数据集信息
- cms_query_dataset -使用筛选器查询数据(最多5000行)
- cms_get_dataset_stats -获取行数和列信息
- cms_get_csv_link -获取Athena的CSV下载URL
资源模板
cms://datasets-浏览所有可用的CMS数据集cms://dataset/{id}-访问特定的数据集元数据cms://csv/{id}-获取CSV下载链接
安装
先决条件
- Node.js 18或更高版本
- Claude Desktop或其他MCP兼容客户端
快速安装
# Clone or navigate to the project directory
cd cms-datagov-mcp-server
# Install dependencies
npm install
# Build the TypeScript code
npm run build
# Link globally (for Claude Desktop)
npm link配置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
添加此配置:
{
"mcpServers": {
"cms-datagov": {
"command": "cms-datagov-mcp-server",
"args": [],
"env": {}
}
}
}重新启动Claude Desktop以激活服务器。
用法
搜索数据集
"Search CMS datasets for TEAM episode"返回一个包含ID、描述和可用格式的匹配数据集列表。
获取数据集详细信息
"Get details for dataset 9887a515-7552-4693-bf58-735c77af46d7"返回全面的元数据,包括API端点、CSV链接和列信息。
查询数据集记录
"Query dataset 9887a515-7552-4693-bf58-735c77af46d7 where organization_ccn=100007, return 100 rows"通过可选的筛选、排序和列选择,最多返回5000行。
获取数据集统计信息
"Get statistics for dataset 9887a515-7552-4693-bf58-735c77af46d7"返回有关数据集的列名、类型和元数据。
获取CSV下载链接
"Get CSV link for dataset 9887a515-7552-4693-bf58-735c77af46d7"返回用于创建Athena外部表的直接下载URL。
API 参考
cms_search_datasets
按关键字、主题或标题搜索CMS数据集。
参数:
query(可选):标题、描述或关键字的搜索词theme(可选):按主题筛选(例如,“医疗保险”、“医疗补助”)limit(可选):返回的最大结果数(默认值:10)
退货: 具有元数据的匹配数据集数组
cms_get_dataset
获取特定数据集的详细信息。
参数:
dataset_id(必填):数据集的UUID
退货: 完整的数据集元数据,包括API端点和CSV URL
cms_query_dataset
通过过滤和分页查询数据集记录。
参数:
dataset_id(必填):数据集的UUIDfilter(可选):过滤表达式(例如。,[field]=value)columns(可选):逗号分隔的列列表sort(可选):要排序的列(前缀为-下降)offset(可选):要跳过的行数(默认值:0)size(可选):要返回的行数(最大5000,默认值:100)
退货: JSON匹配记录数组
cms_get_dataset_stats
获取数据集的统计信息。
参数:
dataset_id(必填):数据集的UUID
退货: 列信息和数据集元数据
cms_get_csv_link
获取CSV直接下载URL。
参数:
dataset_id(必填):数据集的UUID
退货: CSV下载URL及使用说明
与Athena整合
对于大型数据集或复杂分析:
- 使用
cms_get_csv_link获取下载URL - 将CSV下载到S3存储桶
- 创建Athena外部表:
CREATE EXTERNAL TABLE cms_team_data (
organization_ccn STRING,
organization_name STRING,
-- ... other columns
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS TEXTFILE
LOCATION 's3://your-bucket/cms-data/'
TBLPROPERTIES ('skip.header.line.count'='1');- 在Athena中运行复杂的SQL查询
故障排除
服务器未出现在Claude桌面中
- 验证服务器是否已链接:
npm list -g @clarify/cms-datagov-mcp-server - 检查配置文件语法(有效的JSON)
- 完全重新启动克劳德桌面
- 检查Claude Desktop日志是否有错误
API错误
- 404未找到:数据集ID无效
- 超时:数据集太大,请改用CSV下载
- 速率限制:请稍候,然后重试
构建错误
# Clean and rebuild
rm -rf build node_modules
npm install
npm run buildCMS API详细信息
- 基本URL: https://data.cms.gov/data-api/v1
- 目录: https://data.cms.gov/data.json
- 最大行数: 每次请求5000
- 无身份验证: 公共数据,不需要API密钥
何时使用MCP vs Athena
使用MCP:
- 数据集发现和探索
- 快速查找(\5000行)
- 复杂的连接和聚合
- 按操作分组
- 重复分析
发展
构建
npm run build观看模式
npm run watch测试
node test-validation.mjs许可证
MIT许可证-有关详细信息,请参阅许可证文件
支持
对于CMS API问题:OEDAUserResearch@cms.hhs.gov
对于MCP协议文件:https://modelcontextprotocol.io/
