Token导航 LogoToken导航TokenDH.com
Multi-service MCP Server logo
开发工具stdio官方级别未说明来源级核验

Multi-service MCP Server

MCP Server

an MCP server for the services I like to use with AI agents, which you should probably fork and modify for your own use. No PRs accepted, this is just for me. Not private because you or a bot might get something out of what you see here.

工具数

0

提示词数

0

GitHub Stars

3

资源数

0
开发工具集成Python浏览器自动化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

AdamPippert

提供方

AdamPippert

最后核验

2026/5/18 02:52

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

\*\*注意:此项目不再维护,因为较小模型的模型内存问题意味着我对MCP服务器的首选方法是作为单独的容器化服务器提供商,而不是单片路由提供商。代码被保留下来,以防其他人仍然想走这条路。

模型上下文协议(MCP)服务器

实现以下功能的模块化服务器 模型上下文协议 标准,为GitHub、GitLab、谷歌地图、内存存储和Puppeteer网络自动化提供工具。

建筑

MCP服务器采用模块化架构构建,其中每个工具都作为单独的模块实现。服务器提供了一个统一的网关,将请求路由到适当的工具。

MCP Server Architecture

特性

  • MCP网关:遵循MCP标准的所有工具请求的统一端点
  • MCP清单:描述所有可用工具及其功能的端点
  • 直接工具访问:每个工具都可以通过自己的API端点直接访问
  • 模块化设计:根据需要轻松添加或删除工具

包含的工具

  1. GitHub工具:与GitHub存储库、问题和搜索进行交互
  2. GitLab工具:与GitLab项目、问题和管道进行交互
  3. 谷歌地图工具:地理编码、方向和地点搜索
  4. 记忆工具:持久存储和检索数据
  5. 木偶工具:截图、生成PDF和从网站提取内容

入门指南

先决条件

  • Python 3.8或更高版本
  • Node.js 14或更高版本
  • 基于红帽的Linux发行版(RHEL、CentOS、Fedora)或任何Linux/macOS系统

安装

  1. 克隆此存储库:
   git clone https://github.com/yourusername/mcp-server.git
   cd mcp-server
  1. 安装Python依赖项:
   pip install -r requirements.txt
  1. 安装Node.js依赖项:
   npm install
  1. 创建一个 .env 使用您的配置文件:
   SECRET_KEY=your-secret-key
   DEBUG=False

   # GitHub configuration
   GITHUB_TOKEN=your-github-token

   # GitLab configuration
   GITLAB_TOKEN=your-gitlab-token

   # Google Maps configuration
   GMAPS_API_KEY=your-google-maps-api-key

   # Memory configuration
   MEMORY_DB_URI=sqlite:///memory.db

   # Puppeteer configuration
   PUPPETEER_HEADLESS=true
   CHROME_PATH=/usr/bin/chromium-browser
  1. 启动服务器:
   python app.py

容器化部署

您可以使用Docker或Podman(红帽的容器引擎)运行服务器。

Docker部署

如果你已经安装了Docker和Docker compose:

  1. 构建Docker镜像:
   docker build -t mcp-server .
  1. 运行容器:
   docker run -p 5000:5000 --env-file .env mcp-server
  1. 或者,使用docker compose:

创建一个 docker-compose.yml 文件:

   version: '3'
   services:
     mcp-server:
       build: .
       ports:
         - "5000:5000"
       volumes:
         - ./data:/app/data
       env_file:
         - .env
       restart: unless-stopped

然后运行:

   docker-compose up -d

波德曼部署

对于使用Podman的基于Red Hat的系统(RHEL、CentOS、Fedora):

  1. 构建容器映像:
   podman build -t mcp-server .
  1. 运行容器:
   podman run -p 5000:5000 --env-file .env mcp-server
  1. 如果您需要持久存储:
   mkdir -p ./data
   podman run -p 5000:5000 --env-file .env -v ./data:/app/data:Z mcp-server

注: :Z 后缀对于支持SELinux的系统很重要。

  1. 使用Podman Compose(如果已安装):
   # Install podman-compose if needed
   pip install podman-compose

   # Use the same docker-compose.yml file as above
   podman-compose up -d

使用MCP服务器

MCP网关

MCP网关是使用MCP标准访问所有工具的主要端点。

端点: POST /mcp/gateway

请求格式:

{
  "tool": "github",
  "action": "listRepos",
  "parameters": {
    "username": "octocat"
  }
}

响应格式:

{
  "tool": "github",
  "action": "listRepos",
  "status": "success",
  "result": [
    {
      "id": 1296269,
      "name": "Hello-World",
      "full_name": "octocat/Hello-World",
      "owner": {
        "login": "octocat",
        "id": 1
      },
      ...
    }
  ]
}

MCP清单

MCP清单描述了所有可用的工具及其功能。

端点: GET /mcp/manifest

响应格式:

{
  "manifestVersion": "1.0",
  "tools": {
    "github": {
      "actions": {
        "listRepos": {
          "description": "List repositories for a user or organization",
          "parameters": {
            "username": {
              "type": "string",
              "description": "GitHub username or organization name"
            }
          },
          "returns": {
            "type": "array",
            "description": "List of repository objects"
          }
        },
        ...
      }
    },
    ...
  }
}

直接工具访问

每个工具也可以通过其自己的API端点直接访问:

  • github: /tool/github/...
  • GitLab: /tool/gitlab/...
  • 谷歌地图: /tool/gmaps/...
  • 内存: /tool/memory/...
  • 木偶师: /tool/puppeteer/...

有关可用终结点的详细信息,请参阅每个工具的API文档。

工具文档

GitHub工具

GitHub工具提供对GitHub API的访问,用于存储库、问题和搜索。

行动:

  • listRepos:列出用户或组织的存储库
  • getRepo:获取特定存储库的详细信息
  • searchRepos:搜索存储库
  • getIssues:获取存储库的问题
  • createIssue:在存储库中创建新问题

GitLab工具

GitLab工具为项目、问题和管道提供对GitLab API的访问。

行动:

  • listProjects:列出经过身份验证的用户可访问的所有项目
  • getProject:获取特定项目的详细信息
  • searchProjects:在GitLab上搜索项目
  • getIssues:获取项目问题
  • createIssue:在项目中创建新问题
  • getPipelines:为项目获取管道

谷歌地图工具

谷歌地图工具提供对谷歌地图API的访问,用于地理编码、方向和地点搜索。

行动:

  • geocode:将地址转换为地理坐标
  • reverseGeocode:将地理坐标转换为地址
  • getDirections:获取两个地点之间的路线
  • searchPlaces:使用Google places API搜索地点
  • getPlaceDetails:获取特定地点的详细信息

记忆工具

Memory工具提供了一个持久的键值存储,用于存储和检索数据。

行动:

  • get:按键获取记忆项
  • set:创建或更新内存项
  • delete:按键删除存储项
  • list:列出所有内存项,可选筛选
  • search:按值搜索内存项

木偶工具

Puppeteer工具提供网络自动化功能,用于截图、生成PDF和从网站提取内容。

行动:

  • screenshot:截取网页的屏幕截图
  • pdf:生成网页的PDF
  • extract:从网页中提取内容

贡献

欢迎投稿!以下是如何扩展MCP服务器:

添加新工具

  1. 在中创建新文件 tools 目录。, tools/newtool_tool.py
  2. 使用与现有工具相同的模式执行操作来实现该工具
  3. 将工具添加到清单中 app.py
  4. 在中注册工具的蓝图 tools/__init__.py

许可证

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

致谢

目录标签

目录标签

开发工具集成Python浏览器自动化developer-tools模块化服务器本地部署API网关网页自动化数据存储

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP