BioOntology-MCP-Server:基于 MCP 协议的生物本体服务项目

可用于生物本体的搜索、注释和探索,提供访问 BioOntology API 的生产级 MCP 服务器,支持1200+生物本体,具备搜索发现、文本分析、本体导航及分析功能。【此简介由AI生成】

分支1Tags0
当前项目代码仓暂无内容

Logo

非官方 BioOntology MCP 服务器

一款生产级别的模型上下文协议(MCP)服务器,提供对 BioOntology API 的全面访问,支持搜索、注释和浏览超过 1200 个生物本体。

功能特性

搜索与发现

  • search_terms - 通过高级筛选选项跨本体术语进行搜索
  • search_properties - 按标签和 ID 搜索本体属性
  • search_ontologies - 按名称、描述或领域查找本体
  • get_ontology_info - 获取特定本体的详细信息

文本分析

  • annotate_text - 分析文本并识别相关本体术语
  • recommend_ontologies - 获取针对文本或关键词的本体推荐
  • batch_annotate - 高效处理多个文本的注释任务

本体导航

  • get_class_info - 获取本体类别的详细信息

分析与元数据

  • get_ontology_metrics - 获取使用统计数据和质量指标
  • get_analytics_data - 获取访问统计数据和流行趋势

安装

  1. 克隆或下载本服务器
  2. 安装依赖:
    npm install
    
  3. 构建服务器:
    npm run build
    

配置

使用本服务器需要 BioOntology API 密钥。可从 BioPortal 获取:

  1. https://bioportal.bioontology.org/ 创建账户
  2. 从账户设置中生成 API 密钥
  3. 设置环境变量:
    export BIOONTOLOGY_API_KEY=your_api_key_here
    

使用方法

运行服务器

node build/index.js

服务器通过标准输入输出(stdio)运行,并实现 MCP 协议以与兼容 MCP 的客户端进行通信。

资源模板

服务器提供多个资源模板,用于直接数据访问:

  • bioontology://ontology/{acronym} - 完整的本体信息
  • bioontology://class/{ontology}/{class_id} - 本体类详情
  • bioontology://search/{query} - 术语搜索结果
  • bioontology://annotations/{text} - 文本注释结果
  • bioontology://recommendations/{input} - 本体推荐
  • bioontology://analytics/{ontology} - 分析数据

工具调用示例

搜索术语:

{
  "tool": "search_terms",
  "arguments": {
    "query": "diabetes",
    "ontologies": "NCIT,DOID",
    "require_definitions": true,
    "pagesize": 10
  }
}

文本注释:

{
  "tool": "annotate_text",
  "arguments": {
    "text": "The patient has diabetes mellitus and hypertension",
    "ontologies": "NCIT,DOID,HP",
    "longest_only": true
  }
}

获取本体推荐:

{
  "tool": "recommend_ontologies",
  "arguments": {
    "input": "cancer treatment protocols",
    "input_type": 1,
    "output_type": 1
  }
}

批量注释多个文本:

{
  "tool": "batch_annotate",
  "arguments": {
    "texts": ["diabetes mellitus", "cardiac arrest", "lung cancer"],
    "ontologies": "NCIT",
    "longest_only": true
  }
}

支持的本体

该服务器可处理 BioPortal 中所有可用的本体(1200 多个),包括:

医学/临床领域:

  • NCIT - NCI 术语表(癌症术语)
  • DOID - 疾病本体
  • HP - 人类表型本体
  • MESH - 医学主题词表

生物/化学领域:

  • GO - 基因本体
  • UBERON - 解剖学本体
  • CHEBI - 生物相关化学实体

以及 1190 多个更专业的本体

与 MCP 客户端的集成

本服务器与任何支持 MCP 的客户端兼容。常用选项包括:

  • Claude Desktop - 添加到您的 MCP 配置中
  • VSCode 扩展 - 与兼容 MCP 的扩展配合使用
  • 自定义应用程序 - 通过 MCP 协议进行集成

MCP 配置示例

添加到您的 MCP 客户端配置中:

{
  "servers": {
    "bioontology": {
      "command": "node",
      "args": ["/path/to/bioontology-server/build/index.js"],
      "env": {
        "BIOONTOLOGY_API_KEY": "your_api_key_here"
      }
    }
  }
}

高级功能

输入验证

  • 全面的参数验证,并提供适当的错误提示
  • 所有输入的类型检查
  • 数值参数的范围验证
  • 受限值的枚举验证

错误处理

  • API错误的优雅处理
  • 结构化错误响应
  • 网络超时管理
  • 身份验证错误报告

性能

  • 高效的API请求处理
  • 适当的超时管理
  • 内存使用优化
  • 并发请求支持

API文档

有关详细的BioOntology API文档,请参见:https://data.bioontology.org/documentation

生产环境使用

本服务器已通过全面测试,可投入生产环境使用。其提供:

  • 可靠的API集成,具备强大的错误处理能力
  • 全面的输入验证,适用于所有工具
  • 完全的MCP协议合规性,确保无缝集成
  • 支持1200+种本体,覆盖所有生物领域
  • 高性能,具有优化的响应时间

许可证

MIT许可证 - 详见LICENSE文件。

引用

如果您在研究或出版物中使用本项目,请按以下格式引用:

@misc{yourproject2025,
  author       = {Moudather Chelbi},
  title        = {Augmented Nature BioOntology MCP Server},
  year         = {2025},
  howpublished = {https://github.com/Augmented-Nature/BioOntology-MCP-Server},
}

项目介绍

可用于生物本体的搜索、注释和探索,提供访问 BioOntology API 的生产级 MCP 服务器,支持1200+生物本体,具备搜索发现、文本分析、本体导航及分析功能。【此简介由AI生成】

定制我的领域