MCP连接器平台

SuperMCP是一个用于创建、部署和管理连接AI助手与数据库及API的MCP连接器的综合平台,支持多服务器配置和集中管理。

  • by dhanababum
  • Python
  • 本地部署
  • 62 星标
  • 更新于
在 GitHub 查看 dhanababum/supermcp

使用说明

SuperMCP

一个用于创建、部署和管理模型上下文协议(MCP)连接器的综合平台,该连接器将AI助手与数据库、API和其他数据源连接起来。

📹 简介视频

SuperMCP简介


▶️ Watch on YouTube

SuperMCP新设计


▶️ Watch on YouTube

🎯 什么是SuperMCP?

SuperMCP是一种 强大的平台 这使您能够创建 多个隔离的MCP服务器 使用一个 单个独立连接器这种独特的架构使您能够:

  • 一个连接器连接多台服务器:部署一个连接器实例,并创建具有不同配置的无限隔离MCP服务器
  • 隔离配置:每个MCP服务器都有自己的凭据、连接设置和安全令牌
  • 资源效率的:跨服务器共享连接池和资源,同时保持隔离
  • 简化管理:从单个连接器部署管理所有数据库连接

运作原理

SuperMCP允许您:

  1. 部署一次:设置单个PostgreSQL或MSSQL连接器
  2. 创建多个服务器:根据需要配置尽可能多的隔离MCP服务器
  3. 独立访问:每个服务器都使用自己的令牌和凭据独立运行
  4. 集中控制:从一个统一的仪表板管理所有内容

这种方法大大降低了基础设施的复杂性,同时为多租户应用程序、开发环境和企业部署提供了最大的灵活性。

🏗️ 建筑

SuperMCP由三个主要组件组成:

┌─────────────────────────────────────────────────────────────────┐
│                     Frontend (React + Tailwind)                 │
│                      http://localhost:3000                      │
│  • Connector Management  • Server Configuration                │
│  • Visual Dashboard      • Real-time Monitoring                │
└──────────────────────┬──────────────────────────────────────────┘
                       │
                       │ REST API
                       ▼
┌─────────────────────────────────────────────────────────────────┐
│                    Backend (FastAPI + SQLModel)                 │
│                      http://localhost:9000                      │
│  • User Authentication    • Connector Registry                 │
│  • Configuration Storage  • API Endpoints                      │
│  • Server Management      • Token Management                   │
└──────────────────────┬──────────────────────────────────────────┘
                       │
                       │ MCP Protocol
                       ▼
┌─────────────────────────────────────────────────────────────────┐
│                    Connectors (Microservices)                   │
│  PostgreSQL (:8027) │ MSSQL (:8028) │ Custom Connectors        │
│  • Connection Pooling  • Async Operations                      │
│  • Schema Introspection • Query Execution                      │
│  • Transaction Support  • Tool Registration                    │
└─────────────────────────────────────────────────────────────────┘

🚀 主要特点

数据库与集成

  • 数据库连接器:PostgreSQL、MSSQL的生产就绪连接器,具有连接池、异步操作和模式自检功能
  • MCP协议:实现标准化工具注册和执行的完整模型上下文协议
  • API集成:使用FastAPI-Users身份验证进行编程访问的RESTful API
  • 多服务器支持:使用独立配置管理多个服务器实例的单个连接器

安全与管理

  • 安全数据层:使用加密的凭据存储和受保护的基于令牌的身份验证安全地连接到您的数据源
  • 身份验证和授权:所有服务器都完全受到基于令牌的身份验证的保护,并具有细粒度的访问控制
  • 可视化管理:直观的基于React的仪表板,用于管理连接器、服务器、令牌和配置
  • 模式验证:基于Pydantic的验证,具有自动生成的表单和类型安全性

性能和部署

  • Docker部署:完全容器化Docker Compose,支持开发和生产环境
  • 连接池:具有LRU逐出、TTL管理和每台服务器限制的智能连接池
  • 定制工具:使用连接器定义的模板创建自定义工具,以实现可重用的工作流
  • 自定义连接器:为任何数据源构建自定义连接器,并与您的团队共享

🎯 用例

  • 多租户应用程序:使用动态连接器实例和安全凭据管理为每个租户创建隔离的数据库连接
  • 数据集成中心:使用标准化工具将多个异构数据源集成到统一的访问层
  • API网关:构建一个具有身份验证、速率限制和监控功能的集中式数据库访问网关
  • 开发者工具:为开发人员提供对数据库工具、查询执行和模式探索的轻松访问
  • AI数据访问:使AI助手能够通过标准化的MCP协议查询数据库并与之交互
  • 数据操作平台:为数据库操作、迁移和管理创建一个全面的平台

🛠️ 技术栈

后端

  • FastAPI 0.109+ -现代Python web框架
  • SQL模型0.0.14+ -带有Python类型提示的SQL数据库
  • PostgreSQL 12+ -支持JSONB的数据库
  • FastAPI用户 -身份验证和用户管理
  • 蒸馏器 -数据库迁移
  • Pydantic 2.5+ -数据验证和设置

前端

  • 反应19 -UI框架
  • 顺风CSS 3 -实用性优先的造型
  • 反应jsonschema表单 -动态表单生成
  • 获取API -用于REST调用的HTTP客户端

连接器

  • FastMCP -MCP服务器框架
  • 异步PG -PostgreSQL异步驱动程序
  • aioodbc -MSSQL异步驱动程序
  • 紫外线 -快速Python包安装程序

开发运维

  • Docker&Docker编写 -集装箱化
  • 卡迪 -反向代理和HTTPS
  • PostgreSQL -主数据库

📚 核心概念

连接器

实现MCP协议以与特定数据源接口的独立微服务。每个连接器在自己的端口上独立运行。

服务器

具有特定配置(凭据、主机、数据库)的连接器实例。一个连接器可以管理多个服务器。

工具

连接器暴露的可调用操作(例如。, list_tables, execute_query, test_connection).

模板

预配置的工具模式,用于常见工作流的参数验证。

连接池

具有自动清理、LRU驱逐和可配置限制的托管连接池。

🔒 安全特性

凭据管理

  • PostgreSQL中的加密存储
  • 从未在响应中记录或公开
  • 将传输固定到连接器
  • 支持环境变量

身份验证和授权

  • FastAPI用户身份验证
  • 基于Cookie的会话
  • JWT令牌支持
  • 用户角色管理

连接安全性

  • SSL/TLS用于数据库连接
  • 证书验证选项
  • 传输中的加密数据
  • 安全连接字符串

查询安全

  • 参数化查询可防止SQL注入
  • 通过Pydantic进行输入验证
  • 查询超时限制
  • 基于权限的访问控制

🚦 快速开始

先决条件

  • Python 3.12+
  • Docker&Docker编写
  • UV包管理器
  • Node.js 18+
  • PostgreSQL 12+

安装

  1. 克隆存储库
git clone https://github.com/dhanababum/supermcp.git
cd supermcp
  1. 启动后端
cd app
uv sync
uv run python src/main.py
# Server runs on http://localhost:9000
  1. 启动前端
cd web
npm install
npm start
# Opens http://localhost:3000
  1. 启动连接器
# PostgreSQL Connector
cd connectors/postgres
uv run python main.py

# MSSQL Connector
cd connectors/mssql
uv run python main.py

📖 文档

有关完整文档,请访问我们的 文档站点 或检查 /docs 目录。

  • 入门指南:快速设置指南,让SuperMCP在几分钟内运行
  • 建筑:详细的系统架构和组件交互
  • 连接器概述:了解MCP连接器以及如何构建自己的连接器
  • API 参考:完整的API文档及示例
  • 开发指南:地方发展设置和最佳做法
  • AI工具集成:将SuperMCP与Cursor、Claude Code和Windsurf集成

🤝 贡献

欢迎投稿!请随时提交拉取请求。

  1. 分叉存储库
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交您的更改(git commit -m 'Add some AmazingFeature')
  4. 推到分支(git push origin feature/AmazingFeature)
  5. 打开拉取请求

🌟 为什么选择SuperMCP?

  • 生产就绪:使用企业级工具构建,如FastAPI、SQLModel和PostgreSQL
  • 开发者友好:漂亮的仪表板、全面的文档和广泛的示例
  • 可扩展:易于按照提供的模式添加新连接器
  • 表演:异步操作、连接池和优化查询
  • 安全:内置身份验证、加密和查询安全
  • 现代堆栈:最新版本的React、FastAPI和Python 3.12+

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🤝 社区与支持

👨‍💻 作者

达纳·巴布


准备好开始了吗?关注我们 快速入门指南 让SuperMCP在几分钟内运行!