医疗健康MCP服务器提供了一系列API端点和程序化API,用于获取医疗相关的数据,如FDA药品信息、PubMed文献、健康主题、临床试验信息以及ICD - 10代码等,数据均来自公开资源。
本服务器提供了多种API接口,可根据需求调用不同的接口获取相应的医疗数据。
GET/fda/drugs?brand_name={drug_name}&search_type={search_type}参数说明:
| 参数 | 详情 |
|---|---|
drug_name |
要搜索的药物名称 |
search_type |
检索的信息类型,可选值为 general(基本药物信息,默认)、label(药品标签信息)、adverse_events(不良反应报告) |
示例响应:
{
"status": "success",
"results": {
"drug_info": [
{
"brand_name": "阿司匹林",
"generic_name": "aspirin",
"approval_date": "2010-05-18",
"active_ingredients": ["乙酰水杨酸"]
}
]
}
}
GET/pubmed/search?query={query}&max_results={max_results}&date_range={date_range}参数说明:
| 参数 | 详情 |
|---|---|
query |
文献查询关键词 |
max_results |
返回的最大结果数,默认值为5 |
date_range |
限制返回的文章发表时间范围,例如'5'表示过去5年 |
GET/health_topics/{topic}?language={language}参数说明:
| 参数 | 详情 |
|---|---|
topic |
健康主题关键词 |
language |
内容语言,可选值为 en 或 es,默认为 en |
GET/clinical_trials/search?condition={condition}&status={status}&max_results={max_results}参数说明:
| 参数 | 详情 |
|---|---|
condition |
医学状况或疾病名称 |
status |
试验状态,可选值为 recruiting、completed、active、not_recruiting、all |
max_results |
返回的最大结果数 |
GET/icd10/codes?code={code}&description={description}&max_results={max_results}参数说明:
| 参数 | 详情 |
|---|---|
code |
ICD - 10代码(可选,如果提供了描述) |
description |
医学状况描述(可选,如果提供了代码) |
max_results |
返回的最大结果数,默认值为10 |
POST/mcp/call-tool请求正文示例:
{
"name": "fda_drug_lookup",
"arguments": {
"drug_name": "阿司匹林",
"search_type": "general"
},
"session_id": "optional-session-id"
}
def fda_drug_lookup(drug_name: str, search_type: str = "general"):
pass
参数说明:
| 参数 | 详情 |
|---|---|
drug_name |
要搜索的药物名称 |
search_type |
检索的信息类型,可选值为 general(基本药物信息,默认)、label(药品标签信息)、adverse_events(不良反应报告) |
def pubmed_search(query: str, max_results: int = 5, date_range: str = None):
pass
参数说明:
| 参数 | 详情 |
|---|---|
query |
文献查询关键词 |
max_results |
返回的最大结果数,默认值为5 |
date_range |
限制返回的文章发表时间范围,例如'5'表示过去5年 |
def get_health_topics(topic: str, language: str = "en"):
pass
参数说明:
| 参数 | 详情 |
|---|---|
topic |
健康主题关键词 |
language |
内容语言,默认为 en |
def search_clinical_trials(condition: str, status: str = "all", max_results: int = None):
pass
参数说明:
| 参数 | 详情 |
|---|---|
condition |
医学状况或疾病名称 |
status |
试验状态,可选值为 recruiting、completed、active、not_recruiting、all,默认值为 all |
max_results |
返回的最大结果数 |
def lookup_icd10_codes(code: str = None, description: str = None, max_results: int = 10):
pass
参数说明:
| 参数 | 详情 |
|---|---|
code |
ICD - 10代码(可选) |
description |
医学状况描述(可选) |
max_results |
返回的最大结果数,默认值为10 |
所有数据均来自以下公开资源:
本项目遵循MIT许可证,详情请参考LICENSE文件。