通过类型化 MCP 合约提供药学功能。
它为代理提供什么
一个专门为单个 MCP 连接设计的能力。
服务器拥有其领域逻辑,并发布 MCP 客户端可发现的工具契约。ADK-Rust 可将该契约加载到代理中,为所选模型提供者规范每个模式,并将连接生命周期保持在代理业务逻辑之外。
架构
mcp-pharmacy 在代理系统中的作用。
模型无需了解服务器背后系统的实现细节或凭证。它看到审核过的工具定义。MCP 客户端负责发现和调用,服务器保持验证、策略和与领域系统的通信所有权。
ADK-Rust 代理
从审核过的工具目录中选择能力。
MCP 客户端
发现模式,发送调用,并接收类型化内容。
mcp-pharmacy
验证请求并拥有 19 个已记录工具契约。
领域系统
维护服务器背后的 API、数据、凭证和业务规则。
本仓库当前未发布专用架构 SVG。上方集成图由其文档化的传输和服务器边界生成;具体实现细节请参阅官方 README。
工具目录
代理可以请求 mcp-pharmacy 做什么?
每个工具都有稳定名称、易读的用途和 MCP 初始化时发现的 JSON 输入契约。风险类别来自项目的注册清单(如果有)。
19 个命名工具
openfda_search_labels按通用名、品牌名或适应症搜索美国药品标签(说明书)
read onlyopenfda_get_adverse_events搜索 FDA 不良事件报告系统(FAERS)中的药品不良事件
read onlyopenfda_search_recalls搜索 FDA 药品召回和执法行动
read onlyopenfda_get_ndc查询药品的国家药品代码(NDC)目录条目
read onlydailymed_search_labels按药品名称搜索 DailyMed 结构化产品标签(SPL)
read onlydailymed_get_label_xml按 setid 获取完整 SPL XML 标签以提取详细章节
read onlyrxnorm_normalize将药品名称标准化为 RxNorm RxCUI 标识符
read onlyrxnorm_get_properties按 RxCUI 获取药品属性(名称、术语类型、状态)
read onlyrxnorm_get_atc_classes通过 RxCUI 获取 WHO ATC 分类代码
read onlypubchem_search_compound按名称搜索 PubChem 化合物,获取 CID 和结构
read onlypubchem_get_properties按 CID 获取化合物分子属性(分子式、分子量、IUPAC 名称)
read onlyhealth_canada_search_products按品牌名或活性成分搜索加拿大卫生部药品产品数据库
read only治理
了解每个工具的作用。
服务器连接继承其凭证和部署环境的权限。以下声明来自本项目的 README 和 MCP 注册清单;您的应用程序仍决定代理接收哪些工具以及何处需要批准。
- 注册清单声明了只读工具风险类别。
MCP 接口
当前文档声明的内容。
MCP 可传输工具、资源、提示、结构化结果、进度、取消和长时间运行的工作。此记录突出显示本仓库明确提及的现代协议特性。
安装并连接
遵循项目文档中的起点。
在拥有凭证和领域访问权限的环境中安装服务器。将其添加到您的 MCP 主机,验证发现的工具,并在交付生产代理前缩小工具集。
cargo install mcp-pharmacylet toolset = McpToolset::from_stdio(
"mcp-pharmacy",
["mcp-pharmacy"],
).await?;
let agent = LlmAgentBuilder::new("agent")
.tools(toolset.tools().await?)
.build()?;命令和配置从公开的 README 中提取。部署前请确认官方文档中的先决条件、环境变量和特定版本选项。
官方文档
继续使用项目维护者的权威信息源。
此页面提供服务器的易懂地图。仓库对确切的模式、先决条件、配置、示例、测试、版本和安全更新保持权威。
继续探索