Synapse MCP Server

Synapse MCP Server

site icon
2025.03.31 1
Python数据管理API服务开发效率数据库
Synapse MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,用于暴露 Synapse 实体(如数据集、项目、文件夹、文件和表格)及其注释,并支持 OAuth2 认证。该服务器提供了 RESTful API,用于通过 MCP 访问 Synapse 实体及其注释。
View on GitHub

Overview

基本能力

产品定位

Synapse MCP Server 是一个基于 Model Context Protocol (MCP) 的服务,用于暴露 Synapse 实体(如数据集、项目、文件夹、文件和表格)及其注释,并支持 OAuth2 认证。

核心功能

  • 通过 Synapse 进行认证
  • 通过 ID 或名称检索实体
  • 获取实体注释
  • 获取实体的子实体
  • 基于各种条件查询实体
  • 查询 Synapse 表格
  • 获取 Croissant 元数据格式的数据集

适用场景

  • 需要访问和管理 Synapse 实体的开发者和研究人员
  • 需要集成 Synapse 数据到其他应用程序的场景
  • 需要以编程方式查询和操作 Synapse 数据的场景

工具列表

  • /tools/authenticate: 使用 Synapse 认证
  • /tools/get_oauth_url: 获取 OAuth2 授权 URL
  • /tools/get_entity: 通过 ID 或名称获取实体
  • /tools/get_entity_annotations: 获取实体注释
  • /tools/get_entity_children: 获取容器的子实体
  • /tools/query_entities: 基于条件查询实体
  • /tools/query_table: 查询 Synapse 表格

常见问题解答

  • 支持两种认证方式:Auth Token 和 OAuth2
  • OAuth2 认证需要在 Synapse 注册 OAuth2 客户端
  • 支持两种传输协议:stdio(本地开发)和 sse(云部署)

使用教程

使用依赖

# Clone the repository
git clone https://github.com/SageBionetworks/synapse-mcp.git
cd synapse-mcp

# Create a virtual environment
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install -e .

安装教程

# Install from PyPI
pip install synapse-mcp

调试方式

# Start the server
python server.py --host 127.0.0.1 --port 9000

# Or use the CLI
synapse-mcp --host 127.0.0.1 --port 9000 --debug

# Run tests
./run_tests.sh

# Or run pytest directly
python -m pytest

# Test the server
python examples/client_example.py

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。