使用说明

项目简介

Server Collector 是一个基于 Model Context Protocol (MCP) 构建的服务器,其主要功能是发现、收集��管理互联网上其他的 MCP 服务器。它通过提供一系列工具,帮助用户从网页链接或文本内容中提取 MCP 服务器的信息,并将新的 MCP 服务器提交到一个中心化的目录(如 mcp.so)。

主要功能点

  • MCP服务器信息提取: 提供工具,能够从指定的 URL 链接或文本内容中自动提取潜在的 MCP 服务器信息,例如服务器名称、描述、仓库地址等。
  • MCP服务器目录提交: 允许将新发现的 MCP 服务器信息提交到预设的服务器目录(如 mcp.so),方便集中管理和发现 MCP 服务器资源。
  • 工具化操作: 通过 MCP 协议暴露功能,使得 LLM 应用可以通过调用 Server Collector 提供的工具,自动化地完成 MCP 服务器的发现和提交流程。

安装步骤

  1. 环境准备: 确保已安装 Python 运行环境。建议使用 Python 3.8 或更高版本。
  2. 安装依赖: 使用 'uv' 包管理器(仓库 README 推荐)或 'pip' 安装项目依赖。如果使用 'pip',请先安装 'pip install -r requirements.txt' (项目未提供 requirements.txt,但根据 README 提到 'uv sync' 推测可能使用 uv 进行依赖管理,此处假设用户可以使用 'uv sync' 或手动安装 'mcp' 和 'openai' 等库). 更简易的方式,可以直接在项目根目录下执行 'pip install .' 来安装项目自身以及声明的依赖。
  3. 配置环境变量: 复制仓库中的 '.env' 文件模板,并根据需要配置以下环境变量:
    • 'OPENAI_API_KEY': OpenAI API 密钥,用于内容分析和 MCP 服务器信息提取功能。
    • 'OPENAI_BASE_URL': OpenAI API 的基础 URL,默认为 'https://api.openai.com/v1'。
    • 'OPENAI_MODEL': 使用的 OpenAI 模型名称,默认为 'gpt-4o-mini'。
    • 'MCP_SERVER_SUBMIT_URL': MCP 服务器信息提交的目标 API 地址,默认为 'https://mcp.so/api/submit-project'。

服务器配置

为了让 MCP 客户端(如 Claude)连接到 Server Collector 服务器,您需要配置客户端的 MCP 服务器设置。以下是一个配置示例,可以直接添加到客户端的配置文件中。

针对 Claude 客户端的配置 (claude_desktop_config.json):

"mcpServers": {
  "mcp-server-collector": {
    "command": "uv",
    "args": [
      "--directory",
      "path-to/mcp-server-collector",  //  请替换为 mcp-server-collector 项目的实际路径
      "run",
      "mcp-server-collector"
    ],
    "env": {
      "OPENAI_API_KEY": "sk-xxx",  // 您的 OpenAI API Key
      "OPENAI_BASE_URL": "https://api.openai.com/v1", // OpenAI API Base URL (通常无需修改)
      "OPENAI_MODEL": "gpt-4o-mini", // 使用的 OpenAI 模型 (可根据需要修改)
      "MCP_SERVER_SUBMIT_URL": "https://mcp.so/api/submit-project" // MCP 服务器提交 API 地址 (通常无需修改)
    }
  }
}

配置参数说明:

  • 'server name': 'mcp-server-collector' - 服务器的名称,客户端通过此名称引用该服务器。
  • 'command': 'uv' - 启动服务器的命令。这里假设使用 'uv' 包管理器运行,如果直接使用 'python' 运行,可以修改为 'python'。
  • 'args': 启动命令的参数列表。
    • '--directory': 'path-to/mcp-server-collector' - 请务必替换为 mcp-server-collector 项目在您本地文件系统中的实际路径。
    • 'run': 表示运行 Python 包。
    • 'mcp-server-collector': 要运行的 Python 包名称,与项目名称一致。
  • 'env': 服务器运行所需的环境变量。这些环境变量将传递给服务器进程。

基本使用方法

配置完成后,MCP 客户端可以通过以下工具与 Server Collector 交互:

  1. 'extract-mcp-servers-from-url': 从指定的 URL 中提取 MCP 服务器信息。客户端需要提供 'url' 参数,即要分析的网页链接。
  2. 'extract-mcp-servers-from-content': 从给定的文本内容中提取 MCP 服务器信息。客户端需要提供 'content' 参数,即包含 MCP 服务器信息的文本内容。
  3. 'submit-mcp-server': 将指定的 MCP 服务器信息提交到服务器目录。客户端需要提供 'url' 参数(MCP 服务器的 URL),可选参数 'avatar_url'(服务器的头像 URL)。

客户端可以通过 MCP 协议的标准方式调用这些工具,例如在 Claude 客户端中,可以使用 '@tool_code' 或类似的机制来调用并使用这些工具。具体调用方式请参考 MCP 客户端的使用文档。

示例使用场景:

用户可以使用 'extract-mcp-servers-from-url' 工具分析 GitHub 仓库列表页,自动发现并提取页面中列出的 MCP 服务器仓库信息。然后,可以使用 'submit-mcp-server' 工具将新发现的 MCP 服务器提交到 mcp.so 目录,从而扩展 MCP 服务器生态。

信息

分类

开发者工具