______________________________________________________________________
标题:可信监控MCP服务器 表情符号🩺 颜色来源:蓝色 颜色To:紫色 sdk:毕业 python版本:3.11 sdk版本:6.0.1 app_file:app.py fullWidth:true short_description:“Gradio MCP服务器暴露了医疗认证工具。” 标签:
- 主控程序
- 格拉迪奥
- 工具
- 医疗保健
固定:false
______________________________________________________________________
CredentialWatch MCP服务器
信誉观察 是为 拥抱面孔MCP 1岁生日/Gradio特工黑客马拉松。它利用 模型上下文协议(MCP), LangGraph 代理人, 格拉迪奥,以及 模态 统一零散的凭证数据,并在即将到期时发出警报。
拥抱脸部空间
此存储库旨在作为 Gradio空间.
- SDK:Gradio(
sdk: gradio在README标题中) - 条目文件:
app.py(通过设置app_file在YAML标头中) - Python:3.11+(固定为
python_version)
当您使用SDK将此仓库推送到Space时= 格拉迪奥,UI和MCP服务器将自动启动。
配置
服务器需要配置后端凭据API URL。在您的空间设置中(或本地 .env 文件),添加:
CRED_API_BASE_URL=http://localhost:8000 # Replace with actual backend URLMCP服务器
此空间通过以下方式展示其工具 模型上下文协议(MCP) 使用Gradio。
如何启用MCP
在 app.py 我们:
- 安装支持MCP的Gradio:
pip install "gradio[mcp]" - 使用文档字符串定义类型化Python函数
- 使用MCP支持启动应用程序:
demo.launch(mcp_server=True)MCP端点
当Space运行时,Gradio会显示:
- MCP SSE端点:
https:///gradio_api/mcp/sse - MCP模式:
https:///gradio_api/mcp/schema
从MCP客户端使用此空间
最简单:拥抱脸部MCP服务器(无需手动配置)
- 转到您的HF MCP设置: https://huggingface.co/settings/mcp
- 在下面添加此空间 空间工具 (在空间上寻找MCP徽章)。
- 重新启动MCP客户端(VS代码、游标、克劳德代码等)。
- 此空间中的工具将显示为MCP工具,可以直接调用。
手动配置(使用MCP-remote的通用MCP客户端)
如果您的MCP客户端使用JSON配置,您可以通过以下方式将其指向SSE端点 mcp-remote:
{
"mcpServers": {
"credentialwatch": {
"command": "npx",
"args": [
"mcp-remote",
"https:///gradio_api/mcp/sse"
]
}
}
}替换 `` 使用您共享空间的完整URL。
地方发展
# 1. Install deps
uv sync
# or
pip install -r requirements.txt
# 2. Run locally
uv run python app.py本地服务器将在http://127.0.0.1:7860,以及MCPhttp://127.0.0.1:7860/gradio_api/mcp/sse.
部署到拥抱面部空间
- 使用SDK创建新空间= 格拉迪奥.
- 将此仓库推送到Space(Git或
huggingface_hub). - 确保中的YAML标头
README.md存在且正确。 - 等待空间构建并启动——它应该显示 MCP徽章 自动。
故障排除
- 配置错误:验证
sdk,app_file,以及python_version在YAML标头中。标题必须是文件中的第一件事(前面没有空行---). - MCP徽章丢失:检查您的应用程序是否调用
demo.launch(mcp_server=True)并确认该空间是公开的。 - LFS问题:确保
README.md不会通过Git LFS进行跟踪。
______________________________________________________________________
🎯 项目目标
CredentialWatch将混乱、分散的提供商数据(州许可证、董事会认证、DEA编号)转换为:
- 一个统一的、可查询的真理来源。
- 主动警报系统 对于有风险的凭证。
该系统旨在解决现实世界中错过凭证到期导致合规性问题、索赔被拒绝和调度冲突的问题。
🧩 建筑
该系统遵循类似微服务的架构,具有严格的关注点分离,由LangGraph代理编排。
组件
- 代理UI(Gradio+LangGraph):用户与代理交互的用户界面(聊天或扫描触发器)。
- 三台MCP服务器:
- npi_mcp:只读访问公共NPPES NPI注册表。 - cred_db_mcp:(托管在此仓库中)内部提供者和凭证数据库操作。 - alert_mcp:警报记录和解决方案管理。
- 模态后端:托管FastAPI微服务和SQLite数据库(
credentialwatch.db).
数据流
User Gradio UI LangGraph Agent
|
-----------------------------------
| | |
[npi_mcp] [cred_db_mcp] [alert_mcp]
| | |
(NPI_API) (CRED_API) (ALERT_API)
| | |
NPPES [SQLite DB] [SQLite DB]📂 存储库内容: cred_db_mcp_server
此存储库当前承载 凭证数据库MCP服务器 (cred_db_mcp).此组件为代理提供了从内部提供程序/凭据数据库读取和向其写入所需的工具。
外露工具
服务器公开了以下MCP工具(通过Gradio的MCP支持):
sync_provider_from_npi(npi):
- 将提供商的数据从NPI注册表(通过后端)同步到本地数据库。 - *用法*:引进新的供应商。
add_or_update_credential(provider_id, type, issuer, number, expiry_date):
- 更新提供者的凭据记录。 - *用法*:保持许可证数据的最新状态。
list_expiring_credentials(window_days, dept?, location?):
- 返回在指定窗口(例如90天)内到期的凭据列表。 - *用法*:主动监测和扫描。
get_provider_snapshot(provider_id?, npi?):
- 返回提供商信息+所有凭据+警报。 - *用法*:用户查询的上下文检索。
🧪 测试
使用以下命令运行单元测试 pytest:
uv run pytest🛠 技术栈
- Python 3.11
- 等级 5+ (前端和MCP服务器)
- FastAPI/HTTPX (网络)
- 派丹蒂克 (数据验证)
- 紫外线 (包管理)
______________________________________________________________________
*专为拥抱脸MCP 1岁生日黑客马拉松而打造。*
