关于 Dog Geroscience
Dog Geroscience 是面向研究人员与 Agent 的犬类衰老研究 MCP 服务,整合基因、药物、论文、临床试验和 FDA 兽药资料,并可按化合物汇总证据与研究空白。
主要功能
- 01查询物种寿命与衰老数据
- 02搜索衰老基因及犬类直系同源基因
- 03换算跨物种药物剂量
- 04检索犬类老化论文与试验
- 05查询 FDA 兽药摘要及结构化记录
- 06生成化合物证据档案
适用场景
- 01比较犬类与其他物种的寿命数据
- 02查找犬类衰老研究中的基因对应关系
- 03整理候选化合物的犬类证据与剂量
- 04核查犬类试验设计及兽药安全资料
MCP 相关
该服务向 MCP 客户端提供犬类衰老数据查询工具,以及用于生成证据简报的 dossier_briefing 提示词。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx dog-geroscience-mcpDOG_GERO_DATADirectory for the prebuilt SQLite database (about 90 MB, downloaded from the Hugging Face Hub on first run). Default: a per-user cache directory.DOG_GERO_DB_URLAlternative download URL for the prebuilt database (a mirror, or a build of your own).本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
dog-geroscience-mcp
mcp-name: io.github.w0lph/dog-geroscience-mcp
一个 MCP 服务,为任何 Agent(Claude、Cursor 和其他 MCP 客户端)提供独一无二的犬类衰老工具:
| 工具 | 来源 | 可回答的问题 |
|---|---|---|
anage_species | HAGR AnAge | 狗(或用于比较的任何物种)的寿命记录:最长寿命、IMR、MRDT、体重、成熟情况。 |
drugage_search、drugage_species_summary | HAGR DrugAge | 按化合物/物种查询延寿实验,并注明是否属于 NIA ITP;展示狗相关证据有多么有限。 |
genage_search | HAGR GenAge | 按符号/名称查询人类衰老基因和模式生物长寿基因。 |
dog_ortholog | Ensembl Compara(实时、带缓存) | 人类/小鼠基因在狗中的直系同源基因:ID、符号、序列一致性百分比、直系同源类型、位置。 |
dose_translate | FDA 2005 Km 表 | 物种间的 mg/kg 换算(小鼠 → 狗 = ×3/20)。 |
dap_releases、dap_codebook_search、dap_variable | Dog Aging Project 公开代码本(GitHub) | 哪些调查变量对应某个概念;某个变量的完整条目;哪些发布版本包含该变量。 |
nih_reporter_search | NIH RePORTER v2(实时) | 按财政年度查询与短语匹配的资助项目。 |
corpus_search、corpus_record、corpus_info | canine-aging-corpus(Europe PMC) | 在 3,500 多篇犬类衰老论文中进行 BM25 搜索;提供所有论文的摘要,以及开放获取子集中论文的 Markdown 全文。 |
foi_summary_search、foi_summary_get | foi-summaries(FDA CVM,公共领域) | 497 种犬用产品的 FOI 摘要:推荐剂量、适应症、给药途径、PK 和安全性候选句、PDF 链接;foi_summary_get 按 foi_id 返回解析后的章节文本(例如剂量倍数目标动物安全性研究)。 |
foi_structured_search | foi-summaries 结构化层 | 497 份摘要的类型化、带引文依据的记录(1,026 个 PK 数值、193 项安全性研究、918 条不良反应记录):给药方案、PK 数值、目标动物安全性研究设计/发现、有效性研究,以及含接受治疗组/对照组发生率的不良反应。 |
canine_trial_search | canine-trials 注册库 | 犬类衰老相关的干预性研究和队列研究(寿命、健康寿命、认知、行动能力、免疫衰老、癌症预防),包括公司项目(STAY/LOY-002、LOY-001、LOY-003)和 TRIAD:设计、状态、干预措施、剂量、时长、研究人群、主要结局、报告结果,以及带逐字引文的来源。可按名称、缩写、干预措施、标签或 PMID 匹配;使用 trial_id 获取单条记录;可按 status 筛选。 |
intervention_dossier | 上述来源 + openFDA 的综合结果 | 每种化合物对应一份证据资料包:跨物种 DrugAge 数据(含 ITP 和犬类记录)、犬类等效剂量、语料库命中结果和犬类试验、目标直系同源基因、openFDA 犬类不良事件、FOI 摘要及明确列出的证据缺口。支持同义词匹配(selegiline ↔ L-deprenyl、rapamycin ↔ sirolimus)。 |
该服务还提供一个 MCP 提示词 dossier_briefing(compound, target_gene?),指示客户端模型调用 intervention_dossier,并撰写六部分证据简报,不得添加工具未返回的内容。examples/rapamycin_briefing.md 是一份基于 examples/rapamycin_dossier.json 撰写的完整示例;examples/selegiline_dossier.json 展示了用于已上市兽药的 FOI 和结构化数据块。
scripts/dossier_eval.py 使用 14 种经过 ITP 测试的化合物和两种兽药对照运行资料包,并输出覆盖情况表(data/dossier_eval.json)。它衡量的是来源中包含的内容,而非生物学真相:例如,rapamycin 可匹配到 37 项 DrugAge 实验、16 条 ITP 记录、152 处语料库提及和 5 项候选犬类试验,但没有 FOI 摘要(因为它不是兽药);而 selegiline 可匹配到 1 项犬类寿命实验、4,117 条 openFDA 犬类报告,以及 2 份 FOI 摘要和 2 条结构化记录;carprofen 可匹配到 46,859 条 openFDA 犬类报告,以及达到各搜索结果上限的 FOI 摘要和结构化记录(分别为 11 和 19)。
该服务有意不重复相邻服务的功能:sniff-mcp(犬类基因组学、OMIA、犬种等位基因频率)、mcp-veterinary-fda(openFDA 动物不良事件、Green Book)以及 longevity-genie 服务(Open Genes、SynergyAge、gget)。
安装
无需构建:首次运行时,会从 Hugging Face Hub (w0lph/dog-geroscience-mcp-data) 下载预构建数据库(约 90 MB),并存入每位用户各自的缓存目录;所有离线工具都使用这一个文件。
uvx dog-geroscience-mcp # stdio server; downloads the database on first start
uvx dog-geroscience-mcp fetch-data # or download it explicitly (prints the path)
Claude Desktop / Claude Code / Cursor 配置:
{
"mcpServers": {
"dog-geroscience": {
"command": "uvx",
"args": ["dog-geroscience-mcp"]
}
}
}
Claude Desktop,一键安装:从发布页面下载 dog-geroscience-mcp-<version>.mcpb 并打开(设置 → 扩展 → 从文件安装)。该捆绑包将 PyPI 软件包声明为 uv 类型扩展,因此桌面应用会使用自己的 uv 进行安装;无需进行其他设置。捆绑包的源文件位于 mcpb/(npx @anthropic-ai/mcpb pack mcpb dist/dog-geroscience-mcp-0.1.1.mcpb)。
Claude Code,通过带路由技能的插件安装(需要将 uv 添加到 PATH):
/plugin marketplace add w0lph/k9
/plugin install dog-geroscience@k9
Codex CLI:
codex mcp add dog-geroscience -- uvx dog-geroscience-mcp
仅安装技能,适用于任何可读取 SKILL.md 文件的 Agent:将 plugins/dog-geroscience/skills/dog-geroscience/ 复制到你的技能目录(对于 Claude Code,为 ~/.claude/skills/)。它会将犬类衰老问题路由到合适的工具,并说明如何读取工具输出(FOI 摘要中的物种标签、异速剂量、逐字引文)。
Docker(仓库根目录下的 Dockerfile 会将数据库打包进镜像):
docker build -t dog-geroscience-mcp . && docker run -i --rm dog-geroscience-mcp
环境变量:DOG_GERO_DATA(数据库所在位置;Windows 上默认为 %LOCALAPPDATA%\dog-geroscience-mcp,其他系统上默认为 ~/.cache/dog-geroscience-mcp,源码检出目录中默认为 <checkout>/data)、DOG_GERO_DB_URL(备用下载 URL)、DOG_GERO_AUTO_FETCH=0(数据库缺失时直接报错,而不下载)。
从源代码构建
uv sync
uv run dog-geroscience-mcp build # downloads HAGR + DAP codebooks, indexes ../corpus/data and ../foi/data
uv run dog-geroscience-mcp build --skip-download
uv run dog-geroscience-mcp build --fulltext-licences "cc by,cc0" --out dog_geroscience.sqlite # the redistributable build
uv run dog-geroscience-mcp # serve from data/dog_geroscience.sqlite
uv run mcp dev src/dog_geroscience_mcp/server.py # inspector (optional)
构建会生成一个 SQLite 文件:其中包含普通表和 FTS5 索引、语料库的 Markdown 全文(本地保留全部内容;发布的文件中仅包含 CC BY / CC0 文章)、完整的 FOI 记录,以及一个包含每个来源 URL 和获取时间的 meta 表。DOG_GERO_CORPUS、DOG_GERO_FOI 和 DOG_GERO_FOI_STRUCTURED 用于指定构建所用的输入。
在源码检出目录中,Claude Desktop 无需从 PyPI 安装即可运行:
{
"mcpServers": {
"dog-geroscience": {
"command": "uv",
"args": ["--directory", "D:/OneDrive/k9/mcp", "run", "dog-geroscience-mcp"]
}
}
}
设计
- 基准数据表(AnAge、DrugAge、GenAge、DAP 代码本)会连同来源原样提供;不会合并或推断任何内容。
- 请求时的网络访问仅限实时工具(Ensembl、RePORTER 以及 dossier 内的 openFDA);Ensembl 结果会缓存到数据库中。数据库仅下载一次,并以原子方式完成;使用前会检查 SQLite 文件头。
queries.py中的查询函数是纯函数,并经过离线测试;server.py是一个轻量封装层。- 许可证:代码采用 MIT 许可证;HAGR 数据采用 CC BY 3.0 许可证(注明出处后允许商业使用);DAP 代码本是公开的 GitHub 文件;语料库内容遵循各篇文章自身的许可证。
测试
uv run pytest -q
uv run ruff check src tests
测试会使用 fixture 构建一个微型数据库,并通过 SDK 的进程内客户端运行服务;整个过程不会访问网络。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。