Meddata

io.github.anthesiallc由 GitHub 帳號 anthesiallc 發布v0.2.1更新於 Oct 24, 2026

Drug & supplement lookup and interaction checks from free U.S. government health data.

已驗證STDIO僅桌面位置與生活知識與記憶

概覽

AI 產生的概覽

讓助理查詢美國藥品與補充品資料,並檢查一組藥品和補充品之間的交互作用。

可以做什麼
把 MedData REST API 包裝成 MCP 工具。工具包含依品牌或學名搜尋藥品的 search_drugs、依 RxCUI 取得藥品詳細資料的 get_drug、依 NDC 代碼查詢的 get_drug_by_ndc、搜尋補充品的 search_supplements、取得補充品說明資料的 get_supplement、檢查 2 到 10 項混合清單交互作用的 check_interactions、提供逐對評估及來源、服用時間與食物條件的 assess_routine,以及查詢計費週期用量的 get_usage。assess_routine 會區分有發現、已查來源但無發現、無來源涵蓋與未能解析四種情況。
適用情境
適合需要以對話方式查詢藥品或補充品資訊,或需要附來源依據的交互作用檢查的情境。assess_routine 適合結果需要解釋或據以行動的情況;check_interactions 適合只需快速列出結果的情況。
執行需求
需要本機 Python 執行環境(PyPI 套件 meddata-mcp,可用 uvx 或 pip 執行),並在 MEDDATA_API_KEY 環境變數中提供 MedData API 金鑰;可申請免費金鑰,每月 250 次呼叫。另有選用的 MEDDATA_BASE_URL 與 MEDDATA_TIMEOUT。由於與 MedData API 應用程式有相依性衝突,應安裝在獨立環境。
安裝前請注意
需要密鑰 MEDDATA_API_KEY,該密鑰會傳送給 MedData API。呼叫會計入每月方案額度,消耗配額。輸出僅供參考,不構成醫療建議;交互作用結果為空只表示在所查來源中未發現,並不代表該組合安全,且許多補充品與補充品的組合沒有任何來源涵蓋。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Meddata,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

MedData MCP Server

mcp-name: io.github.anthesiallc/meddata

A Model Context Protocol server that exposes the MedData API as tools, so any MCP client (Claude Desktop, Cursor, ChatGPT connectors, or an agent framework) can look up drug and supplement data and check interactions conversationally.

It's a thin wrapper: each tool maps to one MedData REST endpoint. All the data work happens in the API.

Tools

ToolWhat it does
search_drugsSearch drugs by brand or generic name; returns RxCUI + details
get_drugFull drug profile by RxCUI
get_drug_by_ndcDrug profile by NDC package code
search_supplementsSearch supplements by name; returns supplement IDs
get_supplementFull supplement fact sheet by ID
check_interactionsInteractions across a mixed list of 2-10 drugs/supplements
assess_routineFull assessment of a routine: per-pair coverage, sources, timing and food conditions
get_usageCurrent billing period usage and plan limit

check_interactions vs assess_routine

check_interactions returns a flat list of interactions. assess_routine returns the reasoning: what each submitted name resolved to, what was consulted for every pair, and the document behind each finding. Reach for it when the answer will be explained or acted on rather than just displayed.

The distinction that matters most is in pairs_checked[].status:

statusmeans
findingone or more grounded findings, listed in findings[]
no_finding_in_sourcesa source covering this kind of pair was consulted and had nothing. Absence of a finding is not evidence of safety
not_coveredno source covers this kind of pair, so it was not assessed. Most supplement-supplement pairs land here
unresolvedan item did not resolve, so nothing could be checked

not_covered and no_finding_in_sources are different answers, and a flat empty list cannot tell them apart.

assess_routine also takes class_matching (default off). With it on, a drug matches the therapeutic classes a supplement record names, not only the drug names it lists; those findings carry basis.level: "class" and name the class, so an inferred match stays distinguishable from an explicit one. Findings also carry basis.level (formulation / ingredient / class) saying how closely the source matches what was submitted, three-state timing and food conditions where silence is not_documented rather than "no effect", and references[] with the document version and the verbatim passage.

Get an API key

Free tier is 250 calls/month, no credit card:

bash
curl -X POST https://meddata.anthesia.io/api/v1/signup \  -H 'Content-Type: application/json' \  -d '{"email":"[email protected]"}'

The key comes back in the api_key field of the response.

Install and run

The easiest way is with uv (no manual venv needed):

bash
# stdio transport (default — for Claude Desktop, Cursor, most local clients)MEDDATA_API_KEY=md_your_key uvx meddata-mcp
# streamable-HTTP transport (for remote / web clients)MEDDATA_API_KEY=md_your_key uvx meddata-mcp --http

Or install with pip into its own environment:

bash
pip install meddata-mcpMEDDATA_API_KEY=md_your_key meddata-mcp

Note: install into a dedicated environment. The mcp SDK requires a newer starlette than the MedData API app pins, so the two will conflict if installed together.

Environment variables:

  • MEDDATA_API_KEY (required) — your MedData API key.
  • MEDDATA_BASE_URL (optional) — defaults to https://meddata.anthesia.io.
  • MEDDATA_TIMEOUT (optional) — request timeout in seconds, default 30.

Client configuration

Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "meddata": {      "command": "uvx",      "args": ["meddata-mcp"],      "env": { "MEDDATA_API_KEY": "md_your_key" }    }  }}

Cursor

Add the same block to ~/.cursor/mcp.json (or the project .cursor/mcp.json).

Smithery (hosted, no install)

The server is hosted on Smithery, so MCP clients that support Smithery can connect without installing anything. You provide your MedData API key in the Smithery config and it routes to the server.

LangChain / LangGraph

Any LangChain or LangGraph agent can use these tools through langchain-mcp-adapters:

python
# pip install langchain-mcp-adapters langgraph "langchain[anthropic]"from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient(    {        "meddata": {            "transport": "stdio",            "command": "uvx",            "args": ["meddata-mcp"],            "env": {"MEDDATA_API_KEY": "md_your_key"},        }    })tools = await client.get_tools()# hand `tools` to a LangGraph/LangChain agent, e.g.# from langgraph.prebuilt import create_react_agent# agent = create_react_agent("anthropic:claude-opus-4-8", tools)

LlamaIndex works the same way via its MCP tool spec.

Develop from source

bash
git clone https://github.com/anthesiallc/meddata-mcp && cd meddata-mcppython -m venv .venv.venv/Scripts/python -m pip install -e ".[http]"   # Windows; [http] adds uvicorn for --http# .venv/bin/pip install -e ".[http]"                # macOS/LinuxMEDDATA_API_KEY=md_your_key .venv/Scripts/python -m meddata_mcp.server

Notes

  • Data is for informational purposes only and is not medical advice.
  • Interaction data comes from established medical databases; an empty result means none were found in those sources, not that a combination is proven safe.

來源:README.md,提交 a0ab4de

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.2.1最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分