MedifinderMCP Server

MedifinderMCP Server

site icon
2025.03.22 0
Python药品库存管理医疗数据查询其它
MedifinderMCP Server 是一个基于 Model Context Protocol (MCP) 的药品库存查询服务,专为与 Claude 等 AI 助手配合使用而设计。它提供了一系列工具和资源,用于通过 MCP 协议查询药品库存数据库。该服务允许 AI 助手和其他客户端搜索药品、检查药品在不同医疗机构的可用性、获取特定药品的库存信息、查看按地区划分的药品统计信息以及分析整个医疗系统的库存状态。
View on GitHub

Overview

基本能力

产品定位

MedifinderMCP Server 是一个药品库存查询服务,旨在通过 Model Context Protocol (MCP) 为 AI 助手和其他客户端提供药品库存查询功能。

核心功能

  • 按名称或位置搜索药品
  • 检查不同医疗机构的药品可用性
  • 获取特定药品的库存信息
  • 查看按地区划分的药品统计信息
  • 分析整个医疗系统的库存状态

适用场景

  • 医疗机构的药品库存管理
  • 患者查询药品可用性
  • 药品供应链分析
  • 区域药品需求统计

工具列表

  • search_medicines: 按名称或位置搜索药品
  • get_medicine_locations: 查找药品可用的位置
  • get_medicine_stock: 获取特定药品的库存信息
  • get_regional_statistics: 获取按地区划分的药品统计信息
  • get_medicine_status: 获取整体药品统计信息
  • diagnose_database: 检查数据库连接性和内容
  • troubleshoot_connection: 详细的数据库连接诊断
  • create_database_schema: 基于模型创建数据库表

常见问题解答

  1. 数据库连接问题: 使用 troubleshoot_connection 工具诊断连接问题,验证 .env 文件中的数据库凭据,确保 PostgreSQL 在指定端口上运行。
  2. 缺少表: 使用 create_database_schema 工具创建数据库表,检查日志中是否有模式创建期间的错误。
  3. 空结果: 如果查询没有返回结果,可能是表中没有数据,需要使用数据摄取过程将数据导入表中。
  4. 会话绑定错误: 如果看到 "Instance is not bound to a Session" 错误,确保模型实例在活动会话中转换为字典。
  5. 缺少依赖项: 运行 pip install -r requirements.txt 确保安装所有依赖项,常见的缺失依赖项包括:mcp、python-dotenv、psycopg2-binary。

使用教程

使用依赖

  1. 安装 PostgreSQL 数据库
  2. 安装 Python 3.x

安装教程

  1. 克隆仓库: git clone https://github.com/yourusername/medifinder-mcp.git cd medifinder-mcp
  2. 创建虚拟环境并安装依赖: python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -r requirements.txt
  3. 设置环境变量,创建 .env 文件: DB_HOST=localhost DB_PORT=5432 DB_NAME=medifinderbot DB_USER=your_user DB_PASSWORD=your_password DEBUG=True ENV=development SERVER_NAME=MedifinderMCP SERVER_VERSION=1.0.0 MCP_SERVER_NAME=MedifinderMCP MCP_SERVER_DESCRIPTION=MCP server for medicine inventory queries MAX_SEARCH_RESULTS=50 SEARCH_SIMILARITY_THRESHOLD=0.3
  4. 创建数据库: psql -U postgres CREATE DATABASE medifinderbot; CREATE USER your_user WITH PASSWORD 'your_password'; GRANT ALL PRIVILEGES ON DATABASE medifinderbot TO your_user; \q
  5. 初始化数据库模式: 启动服务器后,使用 create_database_schema 工具创建表。

调试方式

  1. 运行服务器: python main.py
  2. 使用 MCP Inspector 进行开发和测试: pip install mcp[cli] python -m mcp dev main.py
  3. 使用诊断工具:
  4. diagnose_database: 检查数据库连接、表是否存在、表是否包含数据
  5. troubleshoot_connection: 提供有关数据库连接设置、连接错误、表结构和建议修复的详细信息
  6. create_database_schema: 创建数据库表并提供创建的表列表、发生的任何错误以及测试记录创建结果

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。