此仓库维护了在 BioContextAI 注册表 中列出的 MCP 服务器列表,这些服务器出现在 https://biocontext.ai 并对 BioContextAI 项目做出贡献。
主要目的是提高 MCP 服务器在生物医学研究中的可发现性,并帮助用户找到合适的工具。阅读我们的论文以了解更多关于 BioContextAI 的信息:https://www.nature.com/articles/s41587-025-02900-9。
被列入此列表表示该服务器符合以下所述的基本标准。这 不 构成推荐或表明进行了全面评估,也不考虑后续对服务器的修改。
接受的服务器将在 注册表 UI,注册表 JSON 中可用,并将自动发布到我们的 Bluesky 账户。
提示: 若要接收有关新添加的 MCP 服务器的通知,请使用 GitHub 的“关注”功能来关注此仓库。
首先,您可能需要检查是否存在类似的 MCP 服务器在 注册表 中。如果存在类似的项目,您仍然可以提交您的 MCP 服务器,但我们鼓励您联系并合作,除非技术需求或不同的用例需要不同的实现。
要将您的 MCP 服务器添加到注册表中,请分叉此仓库,在 servers 目录下添加一个 meta.yaml 文件,并打开一个拉取请求将其添加到此仓库中。您可以使用我们的 编辑器 来生成 meta.yaml 文件。
schema.json 中找到此仓库附带了一个预提交钩子,以确保 meta.yaml 文件有效。请在本地设置它以确认您的贡献符合预期模式。
uv venv
source .venv/bin/activate
uv sync
pre-commit install
为了使 MCP 服务器成为 BioContextAI 注册表的一部分,必须满足以下要求:
生物医学焦点:MCP 服务器必须具有特定的应用于生物医学研究或临床活动的工具,而不仅仅是基本工具(如通用编码、文档搜索、数学等)。
免费学术访问:通过 MCP 服务器提供的服务必须免费用于学术研究目的。
开源许可证:代码必须根据 schema.json 文件中指定的 OSI 批准的开源许可证发布。
MCP 符合性:服务器必须遵循模型上下文协议规范并正确实现所需接口。
文档:服务器必须有清晰、全面的文档,解释其功能、安装和使用方法。通常认为良好的 README 是足够的,尽管更复杂的服务器可能会从额外的文档中受益。
公共可访问性:源代码存储库和文档都必须公开可访问。
此外,强烈建议(未来可能成为强制性的):
我们提供了一个 MCP 服务器 Cookiecutter 模板 来帮助您开始。您可以运行以下命令来生成一个新的 MCP 服务器:
uvx cookiecutter https://github.com/biocontext-ai/mcp-server-cookiecutter.git
只需按照说明填写您的 MCP 服务器的详细信息。
请在您的拉取请求描述中完成以下检查清单。当打开新的 PR 时,此检查清单应自动包含。
id 字段是唯一的,并且遵循格式 https://github.com/<github_user>/<repository_name>meta.yaml 文件完全符合 schema.json 中定义的模式。我已经运行了 pre-commit 钩子来确认。一旦您的 MCP 服务器成为注册表的一部分,可以通过在 README 和文档中添加以下徽章来展示它:
[](https://biocontext.ai/registry)
此徽章有助于用户识别您的服务器是官方 BioContextAI 注册表的一部分。
通过以下方式帮助扩大注册表:
如果我们的工作对您的研究有用,请按如下引用。请也承认您最终使用的 MCP 服务器。
@article{BioContext_AI_Kuehl_Schaub_2025,
title={BioContextAI 是一个代理生物医学系统的社区中心},
url={http://dx.doi.org/10.1038/s41587-025-02900-9},
urldate = {225-11-06},
doi={10.1038/s41587-025-02900-9},
year = {2025},
month = nov,
journal={Nature Biotechnology},
publisher={Springer Science and Business Media LLC},
author={Kuehl, Malte and Schaub, Darius P. and Carli, Francesco and Heumos, Lukas and Hellmig, Malte and Fernández-Zapata, Camila and Kaiser, Nico and Schaul, Jonathan and Kulaga, Anton and Usanov, Nikolay and Koutrouli, Mikaela and Ergen, Can and Palla, Giovanni and Krebs, Christian F. and Panzer, Ulf and Bonn, Stefan and Lobentanzer, Sebastian and Saez-Rodriguez, Julio and Puelles, Victor G.},
year={2025},
month=nov,
language={zh},
}