mcpField
M
MB_MCP (Model Context Protocol)

MB_MCP (Model Context Protocol)

github.com/bigmb框架与 SDK084 周前更新

关于 MB_MCP (Model Context Protocol)

MB_MCP 是一个 Python 包,通过 MCP 将 Slack、Google Drive、GitHub、Atlassian 和 PostgreSQL 等服务接入 Claude 及其他大模型。它提供 Web 仪表板和可编程连接器。

主要功能

  1. 01提供 Slack 和 Google Drive 连接器
  2. 02提供 GitHub 和 Atlassian 连接器
  3. 03支持 PostgreSQL 和 Brave Search
  4. 04通过 Web 仪表板查询服务
  5. 05使用环境配置凭据

适用场景

  1. 01通过 Web 仪表板查询已连接服务
  2. 02使用服务连接器构建应用
  3. 03将 Slack 或 GitHub 数据用于大模型

MCP 相关

该包通过 MCP 将服务连接器与 Claude 及其他大模型集成,也包含 MCP 服务实现,包括本地文本格式化服务。

详细介绍

MB_MCP (Model Context Protocol)

一个用于通过 Model Context Protocol (MCP) 将各种服务与 Claude 和其他大模型集成的 Python 包。

概述

MB_MCP 提供了各种服务的连接器,如 Slack、Google Drive、GitHub、Atlassian、PostgreSQL 等。它允许您通过统一的接口构建利用这些服务的应用程序,使创建强大的 AI 助手应用程序变得容易。

功能

  • 多个服务连接器:

    • Slack
    • Google Drive
    • GitHub
    • Atlassian (Confluence & Jira)
    • PostgreSQL
    • Brave Search
    • Formatter
  • Web 仪表盘:用于查询服务的简单 Web 界面

  • 基于环境变量的配置:所有 API 密钥和凭证都存储在 .env 文件中以保证安全

安装

前置条件
  • Python 3.8 或更高版本
  • Docker(用于运行某些服务)
设置
  1. 克隆存储库:

    git clone https://github.com/bigmb/mb_mcp.git
    cd mb_mcp
    
  2. 安装包:

    pip install -e .
    
  3. 设置环境变量:

    cp .env.example .env
    

    编辑 .env 文件并添加你的 API 密钥和凭证。

配置

以下环境变量需要在 .env 文件中设置:

API 密钥
ANTHROPIC_API_KEY=your_anthropic_api_key
OPENAI_API_KEY=your_openai_api_key
GOOGLE_API_KEY=your_google_api_key
Slack 配置
SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
SLACK_TEAM_ID=your_slack_team_id
PostgreSQL 配置
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=postgres
PG_CONNECTION_STRING=postgresql://host.docker.internal:5432/mydb
Google Drive 配置
GDRIVE_CREDENTIALS_PATH=/path/to/your/gdrive/credentials.json
GitHub 配置
GITHUB_PERSONAL_ACCESS_TOKEN=your_github_token
Atlassian 配置
# For Confluence Cloud
CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
[email protected]
CONFLUENCE_API_TOKEN=your_api_token

# For Jira Cloud
JIRA_URL=https://your-domain.atlassian.net
[email protected]
JIRA_API_TOKEN=your_api_token
Brave Search 配置
BRAVE_API_KEY=your_brave_api_key

使用

运行 Web 仪表盘
python -m mb_mcp.app

这将在 http://localhost:5000 启动一个 Flask 服务器,你可以在这里与服务交互。

以编程方式使用连接器
import asyncio
from mb_mcp.slack_connecter import run_app as run_slack_app

async def main():
    question = "Provide the recent updates in the channel in proper format: <channel_id>"
    result = await run_slack_app(question)
    print(result['messages'][-1].content)

if __name__ == "__main__":
    asyncio.run(main())

开发

项目结构
  • mb_mcp/:主包目录
    • app.py:Flask Web 应用程序
    • *_connecter.py:针对不同服务的连接器模块
    • formatter_server.py:用于文本格式化的本地 MCP 服务
  • query_dashboard/:Web 仪表盘前端
  • servers/:MCP 服务实现。Docker 镜像从这里构建。mcp_servers (Anthropic MCP 的服务)

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。