统一模型协议中心

一个基于MindsDB的全功能模型协议(MCP)服务器中心,通过单一端点提供对25+服务的统一访问。连接一次,即可从任何IDE或平台访问所有服务。

  • by MouhamedN96
  • Shell
  • 本地部署
  • 更新于
在 GitHub 查看 MouhamedN96/1tomany

使用说明

MCP统一集线器

一个由MindsDB驱动的一体化模型上下文协议(MCP)服务器中心,通过单个端点提供对25多种服务的统一访问。连接一次,从任何IDE或平台访问所有内容。

建筑

┌─────────────────────────────────────────────────────────────┐
│                     MCP Unified Gateway                      │
│                    http://localhost:3100                     │
│                                                               │
│  Single endpoint for all MCP capabilities                    │
│  • Notion • MongoDB • PostgreSQL • Neon • Redis              │
│  • Stripe • Playwright • Apify • AWS • Kubernetes            │
│  • Discord • Google Maps • Hugging Face • LinkedIn           │
│  • Reddit • Obsidian • Postman • Heroku • Docker             │
│  • Filesystem • Memory • LLM Text • Markdownify              │
│  • Handwriting OCR • Sequential Thinking • And more...       │
└───────────────────┬─────────────────────────────────────────┘
                    │
        ┌───────────┴───────────┐
        │                       │
┌───────▼────────┐    ┌────────▼────────┐
│   MindsDB      │    │   Databases     │
│  (AI/ML Core)  │    │  • PostgreSQL   │
│  Port: 47334   │    │  • MongoDB      │
└────────────────┘    │  • Redis        │
                      └─────────────────┘

特性

  • 单一统一端点:一个网关(http://localhost:3100)适用于所有MCP服务
  • MindsDB集成:在所有数据源中利用MindsDB的AI/ML功能
  • 25+服务集成:访问数据库、API、AI模型和工具
  • 多IDE支持:从Claude Code、VSCode、Cursor或任何兼容MCP的平台连接
  • 基于Docker:完全容器化、便携、易于部署
  • HTTP传输:简单的基于HTTP的MCP协议(无stdio复杂性)
  • 监控:内置Prometheus可观察性指标

快速开始

先决条件

  • Docker桌面已安装并正在运行
  • 至少4GB RAM分配给Docker
  • 要使用的服务的API密钥(可选,按服务配置)

安装

  1. 克隆或导航到MCP Hub目录:

    cd C:\Users\momo-\mcp-hub
    
  2. 配置环境变量:

    # Windows
    copy .env.template .env
    notepad .env
    
    # Linux/Mac
    cp .env.template .env
    nano .env
    
  3. 启动MCP集线器:

    # Windows
    start.bat
    
    # Linux/Mac
    chmod +x start.sh
    ./start.sh
    
  4. 验证它是否正在运行:

    # Check health
    curl http://localhost:3100/health
    
    # List available tools
    curl http://localhost:3100/tools
    

连接到IDE

克劳德代码

添加到您的Claude代码配置中:

claude mcp add --transport http mcp-hub http://localhost:3100/mcp

或手动添加到 .mcp.json:

{
  "mcpServers": {
    "mcp-unified-hub": {
      "transport": "http",
      "url": "http://localhost:3100/mcp",
      "description": "Unified access to all MCP services"
    }
  }
}

VSCode/光标/风帆

添加到您的settings.json:

{
  "mcp.servers": {
    "unified-hub": {
      "type": "http",
      "url": "http://localhost:3100/mcp"
    }
  }
}

临床扩展

临床设置中的配置:

{
  "mcpServers": {
    "mcp-hub": {
      "command": "node",
      "args": ["-e", "require('http').get('http://localhost:3100/mcp')"],
      "env": {}
    }
  }
}

远程连接(从任何机器)

替换 localhost 使用服务器的IP地址:

claude mcp add --transport http mcp-hub http://YOUR_SERVER_IP:3100/mcp

可用服务

数据库和存储

  • PostgreSQL -关系数据库操作
  • MongoDB -文档数据库操作
  • 霓虹 -无服务器Postgres
  • 瑞迪斯 -缓存和发布/订阅操作

AI和ML

  • MindsDB 的 -AI/ML查询和预测
  • 拥抱脸 -访问HF模型
  • LLM文本 -使用各种LLM进行文本处理

生产力和内容

  • 概念 -工作区管理
  • 黑曜石 -记笔记和PKM
  • Discord 的中文翻译是“不和谐”或“纷争”。 -机器人操作和消息传递
  • 领英 -专业人脉
  • 红迪 -社交媒体整合

开发者工具

  • GitHub -存储库管理
  • 邮递员 -API测试和收集
  • 码头工人 -集装箱管理
  • Kubernetes -集群操作

云和基础设施

  • 亚马逊云服务 -S3、Lambda、DynamoDB等
  • Heroku -应用程序部署和管理

自动化与测试

  • 剧作家 -浏览器自动化
  • Apify -网络抓取
  • 执行自动化剧作家 -高级浏览器测试

API和服务

  • 条纹 -付款处理
  • 谷歌地图 -地图和地理位置
  • 手写OCR -从图像中提取文本

公用事业

  • 文件系统 -文件操作
  • 记忆 -持久上下文存储
  • Markdownify -HTML到Markdown的转换
  • 顺序思考 -推理和逻辑链

用法示例

通过HTTP执行工具

curl -X POST http://localhost:3100/execute \
  -H "Content-Type: application/json" \
  -d '{
    "handler": "notion",
    "tool": "search",
    "params": {
      "query": "project notes"
    }
  }'

JSON-RPC 2.0(标准MCP协议)

curl -X POST http://localhost:3100/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "notion.search",
    "params": {
      "query": "project notes"
    },
    "id": 1
  }'

MindsDB查询

curl -X POST http://localhost:3100/mindsdb/api/sql/query \
  -H "Content-Type: application/json" \
  -d '{
    "query": "SELECT * FROM my_model WHERE input='\''analyze this'\''"
  }'

管理命令

# Start the hub
start.bat        # Windows
./start.sh       # Linux/Mac

# Stop the hub
stop.bat         # Windows
./stop.sh        # Linux/Mac

# Check status
status.bat       # Windows
docker-compose ps # Linux/Mac

# View logs
docker-compose logs -f

# View specific service logs
docker-compose logs -f mcp-gateway
docker-compose logs -f mindsdb-core

# Restart services
docker-compose restart

# Rebuild after code changes
docker-compose up -d --build

服务端点

服务 端口 URL
MCP网关 3100 http://localhost:3100
MindsDB HTTP 47334 http://localhost:47334
MindsDB MySQL 47335 本地主机:47335
PostgreSQL 5432 本地主机:5432
MongoDB 27017 本地主机:27017
Redis 6379 本地主机:6379
普罗米修斯 9090 http://localhost:9090

扩展中心

添加新处理程序

  1. 创建新的处理程序文件:

    cd gateway/handlers
    # Copy the template
    cp base.js mynewservice.js
    
  2. 实现您的处理程序(请参见 handlers/README.md 模板)

  3. 注册 gateway/server.js:

    const MyNewServiceHandler = require('./handlers/mynewservice');
    // ...
    handlers.set('mynewservice', new MyNewServiceHandler());
    
  4. 将所需的环境变量添加到 .env.template

  5. 重建:

    docker-compose up -d --build
    

故障排除

网关无法启动

# Check if port 3100 is already in use
netstat -ano | findstr :3100    # Windows
lsof -i :3100                   # Linux/Mac

# Check Docker logs
docker-compose logs mcp-gateway

处理器不工作

# Verify environment variables
docker-compose exec mcp-gateway env | grep API_KEY

# Check handler initialization
docker-compose logs mcp-gateway | grep "initialized"

MindsDB连接问题

# Test MindsDB directly
curl http://localhost:47334/api/status

# Check MindsDB logs
docker-compose logs mindsdb-core

安全说明

  • 永不承诺 .env 文件 -它包含API密钥
  • 使用强密码 用于数据库服务
  • 限制端口访问 在生产环境中
  • 使用HTTPS 当接触互联网时
  • 旋转API键 定期

性能优化

  • 为Docker分配至少4GB的RAM
  • 使用Redis缓存频繁访问的数据
  • 使用Prometheus进行监控 http://localhost:9090
  • 根据需要扩展个人服务:
    docker-compose up -d --scale mcp-gateway=3
    

备份和恢复

# Backup data volumes
docker-compose down
docker run --rm -v mcp-postgres-data:/data -v $(pwd):/backup alpine tar czf /backup/postgres-backup.tar.gz /data

# Restore
docker run --rm -v mcp-postgres-data:/data -v $(pwd):/backup alpine tar xzf /backup/postgres-backup.tar.gz

贡献

要添加新的服务集成,请执行以下操作:

  1. 在中创建处理程序 gateway/handlers/
  2. 将配置添加到 .env.template
  3. 更新 docker-compose.yml 如果需要新的容器
  4. 更新此自述文件
  5. 彻底测试
  6. 提交PR

许可证

MIT许可证-有关详细信息,请参阅许可证文件

支持

致谢


MCP统一集线器 -您的MCP集成一站式解决方案