项目简介

aiservers仓库是一个MCP服务器的集合,旨在展示Model Context Protocol (MCP) 的多功能性和可扩展性。它包含了多种预构建的MCP服务器实现,可以帮助开发者快速理解和应用MCP协议,为大型语言模型 (LLM) 提供安全、可控的工具和数据访问能力。

主要功能点

  • 多样化的服务器实现: 提供了包括文件系统、GitHub、Google Drive、PostgreSQL、Slack、内存知识库、网页浏览器自动化、Brave搜索、Google Maps、网页内容抓取等多种功能的MCP服务器。
  • 即插即用: 大部分服务器可以直接通过 'npx' 或 'uvx' 命令启动,无需复杂的配置。
  • 易于集成: 仓库提供了清晰的Claude Desktop客户端配置示例,方便用户快速将这些服务器集成到支持MCP协议的客户端中。
  • 学习资源: 作为参考实现,该仓库是学习如何构建MCP服务器的宝贵资源,每个服务器都展示了如何使用Typescript或Python MCP SDK来实现资源、工具和Prompt模板的托管和管理。
  • 社区驱动: 虽然由Anthropic管理,但鼓励社区贡献新的服务器和改进,促进MCP生态系统的发展。

安装步骤

本仓库本身无需安装,每个服务器都是独立的,你可以根据需要选择并运行特定的服务器。

Typescript 服务器 (例如 Filesystem, GitHub, Google Maps, Puppeteer, Brave Search)

  1. 确保你已安装 Node.js 和 npm。
  2. 打开终端,使用 'npx' 命令直接运行服务器。例如,启动 Filesystem 服务器:
    npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/files
    '/path/to/allowed/files' 需要替换为你希望允许文件系统服务器访问的目录路径。

Python 服务器 (例如 Git, SQLite, Fetch, Sentry, Google Drive, Everything, Memory, PostgreSQL, Slack)

  1. 确保你已安装 Python 和 pip 或 uvx (推荐)。
  2. 使用 'uvx' 或 'pip' 安装服务器,然后运行。例如,使用 'uvx' 启动 Git 服务器:
    uvx mcp-server-git --repository /path/to/git/repo
    '/path/to/git/repo' 需要替换为你的 Git 仓库路径。 或者使用 'pip' 安装和运行:
    pip install mcp-server-git
    python -m mcp_server_git --repository /path/to/git/repo

服务器配置

要将这些MCP服务器与MCP客户端(例如 Claude Desktop)连接,你需要在客户端的配置文件中添加服务器配置信息。以下是一些示例配置,你可以根据需要进行调整:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
      // Filesystem 服务器,允许访问 /path/to/allowed/files 目录
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
        // GitHub 服务器,需要设置 GitHub Personal Access Token 环境变量
      }
    },
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
      // Memory 服务器,基于知识图谱的内存系统
    },
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-brave-search"],
      "env": {
        "BRAVE_API_KEY": "<YOUR_BRAVE_SEARCH_API_KEY>"
        // Brave Search 服务器,需要 Brave Search API Key 环境变量
      }
    },
    "google-maps": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-google-maps"],
      "env": {
        "GOOGLE_MAPS_API_KEY": "<YOUR_GOOGLE_MAPS_API_KEY>"
        // Google Maps 服务器,需要 Google Maps API Key 环境变量
      }
    },
    "slack": {
      "command": "uvx",
      "args": ["mcp-server-slack"],
      "env": {
        "SLACK_BOT_TOKEN": "<YOUR_SLACK_BOT_TOKEN>",
        "SLACK_TEAM_ID": "<YOUR_SLACK_TEAM_ID>"
        // Slack 服务器,需要 Slack Bot Token 和 Team ID 环境变量
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
      // PostgreSQL 服务器,连接到 postgresql://localhost/mydb 数据库
    },
    "puppeteer": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-puppeteer"]
      // Puppeteer 服务器,用于浏览器自动化和网页抓取
    },
    "fetch": {
      "command": "uvx",
      "args": ["mcp-server-fetch"]
      // Fetch 服务器,用于网页内容抓取和转换
    },
    "git": {
      "command": "uvx",
      "args": ["mcp-server-git", "--repository", "/path/to/git/repo"]
      // Git 服务器,访问 /path/to/git/repo Git 仓库
    },
    "gdrive": {
      "command": "uvx",
      "args": ["mcp-server-gdrive"]
      // Google Drive 服务器,需要先运行 'uvx mcp-server-gdrive auth' 进行授权
    },
    "sqlite": {
      "command": "uvx",
      "args": ["mcp-server-sqlite", "--db-path", "./mydb.db"]
      // SQLite 服务器,使用当前目录下的 mydb.db 数据库文件
    },
    "sentry": {
      "command": "uvx",
      "args": ["mcp-server-sentry"],
      "env": {
        "SENTRY_TOKEN": "<YOUR_SENTRY_AUTH_TOKEN>"
        // Sentry 服务器,需要 SENTRY_TOKEN 环境变量
      }
    },
    "everything": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-everything"]
      // Everything 服务器,一个综合示例服务器,演示 MCP 的各种能力
    }
  }
}

注意:

  • 请将 '<YOUR_TOKEN>'、'<YOUR_BRAVE_SEARCH_API_KEY>'、'<YOUR_GOOGLE_MAPS_API_KEY>'、'<YOUR_SLACK_BOT_TOKEN>'、'<YOUR_SLACK_TEAM_ID>' 和 '<YOUR_SENTRY_AUTH_TOKEN>' 替换为你自己的API密钥或Token。
  • '/path/to/allowed/files' 和 '/path/to/git/repo' 需要替换为实际的路径。
  • Google Drive 服务器首次运行需要进行授权,请运行 'uvx mcp-server-gdrive auth' 并按照提示完成授权。

基本使用方法

  1. 根据你的需求选择合适的MCP服务器,并按照上述安装步骤启动服务器。
  2. 配置你的MCP客户端,将相应的服务器配置信息添加到客户端的配置文件中。
  3. 在MCP客户端中,你就可以使用这些服务器提供的工具、资源和Prompt模板来增强LLM的功能。具体使用方法请参考你所使用的MCP客户端的文档。

信息

分类

AI与计算