K-CRIS MCP服务器
公共数据门户 疾病管理局临床研究DB 集成OpenAPI 模型上下文协议(MCP)服务器是。\ 有关临床研究信息服务(Clinical Research information Service,CRIS)的更多信息, 临床研究信息服务(CRIS)简介请参考。
功能
| 工具 | 说明 |
|---|---|
kcris_list_studies | 符合搜索词、页面的临床研究 列表 查询(CRIS注册号、研究题目、研究种类等) |
kcris_get_study 使用CRIS注册号(例如KCT0002243)进行临床研究 详细 查询(临床研究信息、参与机构信息、研究非支持机构信息、研究责任机构信息、仲裁群信息、主要结果变量信息等) |
要求
- Python 3.10+
- 紫外线 (建议)或pip
安装
1.Git clone&转到项目
git clone https://github.com/your-username/kcris-mcp-server.git
cd kcris-mcp-server2.安装Python依赖性
pip install -r requirements.txt或 uv如果使用:
uv pip install -r requirements.txt运行本地软件包需要安装:
pip install -e .
# 또는 uv 사용 시
uv pip install -e .3.设置环境变量
cp .env.example .env.env 编辑文件以设置以下变量:
- “DATA_GO_KR_SERVICE_KEY”:公共数据门户颁发的验证密钥(公共数据门户 → 疾病管理局_临床研究DB 申请使用后,在我的页面上 个人API身份验证密钥(常规身份验证密钥) 复制)
使用方法
运行服务器(本地)
安装依赖性后:
uv run kcris-mcp-server或者,如果安装了软件包:
python -m kcris_mcp_serverClaude Desktop的使用方法
在Claude Desktop配置文件中添加以下内容:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
Claude桌面 设置→Developer→Edit Config 可以用打开。
方法1:直接使用python
{
"mcpServers": {
"kcris": {
"command": "python",
"args": ["-m", "kcris_mcp_server"],
"cwd": "/path/to/kcris-mcp-server",
"env": {
"DATA_GO_KR_SERVICE_KEY": "your-service-key-here"
}
}
}
}安装依赖性(pip install -r requirements.txt)和安装软件包(pip install -e .)先完成后再使用。
方法2:使用uv(建议)
{
"mcpServers": {
"kcris": {
"command": "uv",
"args": [
"--directory",
"/path/to/kcris-mcp-server",
"run",
"kcris-mcp-server"
],
"env": {
"DATA_GO_KR_SERVICE_KEY": "your-service-key-here"
}
}
}
}参考:Claude Desktop(GUI)中uv可能不在PATH中。这时command呃uv的 完整路径请插入(例如:/Users/username/.local/bin/uv).在终端which uv可以通过确认。
方法3:使用uvx(本地项目)
{
"mcpServers": {
"kcris": {
"command": "/path/to/uvx",
"args": ["--from", "/path/to/kcris-mcp-server", "kcris-mcp-server"],
"env": {
"KCRIS_SERVICE_KEY": "your-service-key-here"
}
}
}
}- 设置后,请完全退出Claude Desktop,然后重新运行。
问题和回答示例
| 想做什么 | 示例问题 |
|---|---|
| 按条件/关键词搜索列表 | “请搜索糖尿病临床研究列表”,“请给我看10个与心脏相关的正在招募的临床试验” |
【查看特定研究详细信息】“KCT0002243告知研究详细信息”,“CRIS注册号KCT0001234告知参与机构和研究责任机构” 调整页面“搜索糖尿病,给我看第二页的结果”
示例对话:
- 用户:帮我搜索10个糖尿病临床研究目录。
- 回应:(使用K-CRIS工具
kcris_list_studies(srch_word="당뇨", num_of_rows=10, page_no=1)调用后整理并显示结果)
- 用户:KCT0002243告诉我研究详细信息。
- 回应:(使用K-CRIS工具
kcris_get_study(cris_number="KCT0002243")呼叫后总结研究题目、招募情况、参与机构、仲裁群等。)
______________________________________________________________________
API注释
- 服务URL:
http://apis.data.go.kr/1352159/crisinfodataview - 查询列表:
GET .../list—serviceKey,resultType=json,srchWord,numOfRows(1~50),pageNo - 详细查询:
GET .../detail—serviceKey,resultType=json,crisNumber(CRIS注册号)
许可证
该项目根据MIT许可证获得许可。
