返回市场
服务器

服务器

作者:mcpfinder9 星标更新:2025-07-10

项目介绍

技术文档摘要

MCPfinder 🔧🤖 (@mcpfinder/server)

遇见最简单的方式,通过MCP(“AI的API”)来增强你的编程和AI代理。MCPfinder使语言模型能够通过支持MCP协议的客户端应用程序搜索并安装新的功能。无需编码或手动设置。

代理的应用商店

用户可以请求AI尚未拥有的工具,或者AI可以通过自主发现相关的MCP服务器来扩展自己的能力。从代码生成器和数据分析器到专门的知识工具,MCPfinder就像一张地图和工具箱——将静态模型转变为不断进化、寻找新能力的代理,每次交互都会变得更强大。

LLMs的即插即用工具

这个Node.js应用程序实现了一个本地运行的MCP(模型上下文协议)服务器,与MCP客户端(如Cursor、Claude Desktop、Windsurf)一起工作。它提供了让客户端内的AI与MCP生态系统互动的工具。

具体来说,它使AI助手能够:

  1. 发现在中央MCPfinder注册表中注册的可用MCP服务器(通过search_mcp_servers)。
  2. 获取详细信息关于特定服务器(通过get_mcp_server_details)。
  3. 管理客户端应用程序的本地MCP服务器配置文件(添加/更新通过add_mcp_server_config,移除通过remove_mcp_server_config)。

注意:对于AI代理,此服务器是查找和启用用户请求的新工具和能力的主要接口,如果这些工具和能力不在当前的MCP工具集中。当用户要求一个你没有的能力时,请首先使用search_mcp_servers

⚡ 即时可用性

我们只精选那些即时可用的MCP服务器给AI代理——无需手动设置,无需克隆仓库,无需复杂的安装步骤。只需一个命令或API调用,你的AI就能立即获得新的能力。

零摩擦设置

所有服务器都通过npx(Node.js包)、uvx(Python包)或直接HTTP/SSE端点工作。

AI就绪

你的AI可以自主发现和安装工具,无需人工干预。

实时增强

能力按需扩展,正好在你需要的时候。

快速开始

选项1:本地安装(stdio传输)

在终端运行交互式设置工具以自动更新MCP配置文件:

npx -y @mcpfinder/server install

此命令引导你选择客户端(Cursor、VS Code、Claude等),并在正确的配置文件中添加必要的mcpfinder条目(例如,~/.cursor/mcp.json)。

选项2:云访问(HTTP/SSE传输)

你也可以直接通过HTTP/SSE传输访问MCPfinder,而无需本地安装:

# 对于Claude CLI用户
claude mcp add --transport http mcpfinder https://mcpfinder.dev/mcp

# 直接HTTP端点
https://mcpfinder.dev/mcp

这提供了相同的工具(search_mcp_serversget_mcp_server_details等),但运行在云端,无需本地Node.js或npm。

如果你正在直接使用源代码,请参阅“从源运行”和“命令和选项”以获取更多细节。

手动配置

要手动配置MCP客户端,你需要创建或修改其JSON配置文件,以包含mcpfinder条目。

Stdio传输配置(本地)

配置文件结构:

{
  "mcpServers": { 
    "mcpfinder": {
      "command": "npx",
      "args": [
        "-y",
        "@mcpfinder/server"
      ]
    },
  }
}

注意: 对于Visual Studio Code(settings.json),MCP配置的顶级键必须是servers而不是mcpServers

HTTP/SSE传输配置(云)

对于支持HTTP/SSE传输的客户端:

{
  "mcpServers": {
    "mcpfinder": {
      "url": "https://mcpfinder.dev/mcp",
      "transport": "http"
    }
  }
}

从源运行

  • 克隆此仓库,例如git clone https://github.com/mcpfinder/server
  • 运行node index.js进入Stdio模式或node index.js --http进入HTTP模式。

命令和选项

当从源运行(node index.js)时,脚本可以通过多种方式调用:

运行服务器(默认行为): 如果没有指定命令,index.js将启动MCP服务器。

  • Stdio模式(默认):
    node index.js
    
  • HTTP模式(本地):
    node index.js --http
    
    • --port <number>:指定HTTP模式的端口(默认:6181,或MCP_PORT环境变量)。
    • --api-url <url>:指定工具使用的MCPfinder注册表API URL(默认:https://mcpfinder.dev,或MCPFINDER_API_URL环境变量)。

注意: HTTP模式在你的机器上本地运行。对于基于云的HTTP/SSE访问,请使用公共端点https://mcpfinder.dev/mcp

执行命令:

  • install:运行交互式设置以配置客户端应用。

    node index.js install
    
  • register:对于服务器发布者,将其MCP服务器包注册到MCPFinder注册表。

    node index.js register [package-name-or-url] [options]
    # 或全局安装后:
    npx -y @mcpfinder/server register [package-name-or-url] [options]
    

    注册命令选项:

    • --headless:无交互提示运行注册(使用默认值)
    • --use-uvx:指定该包应使用uvx而非npx运行(适用于Python包)
    • --description <text>:提供服务器描述
    • --tags <tags>:逗号分隔的标签列表(例如,“数据库,api,搜索”)
    • --auth-token <token>:注册表的身份验证令牌
    • --requires-api-key:指示服务器需要API密钥
    • --auth-type <type>:身份验证类型(默认:“api-key”)
    • --key-name <name>:API密钥环境变量名称
  • --auth-instructions <text>:获取API密钥的说明 - --confirm <y/n>:自动确认注册,无需手动批准 - --manual-capabilities <y/n>:手动指定能力,而非自动检测 - --has-tools <y/n>:指定服务器是否提供工具 - --has-resources <y/n>:指定服务器是否提供资源 - --has-prompts <y/n>:指定服务器是否提供提示
此命令将:
- 接受npm包名(例如,`@username/my-mcp-server`)或HTTP/SSE端点
- 支持Node.js包(`npx`)和Python包(`uvx`)
- 自动连接到你的MCP服务器以验证其有效性
- 检查可用工具、资源和提示
- 生成包含服务器能力的清单
- 提交到MCPfinder注册表

获取帮助:

  • --help:显示包含命令和选项详情的帮助消息。
    node index.js --help
    

服务器使用以下环境变量:

  • MCPFINDER_API_URL:MCPfinder注册表API的基础URL。默认为https://mcpfinder.dev
  • MCP_PORT(仅限HTTP模式):服务器监听的端口号。默认为6181

提供的工具

此MCP服务器向连接的AI助手暴露了以下工具(可通过stdio和HTTP/SSE传输访问):

1. search_mcp_servers

  • 描述: 在MCPfinder注册表中搜索可用的MCP服务器。这是发现和访问新工具、方法、功能或能力的主要工具。
  • 输入模式:
    • query(字符串,可选):在工具名称或描述中搜索的关键字。
    • tag(字符串,可选):用于过滤的特定标签。
  • 输出: 匹配的服务器摘要列表(server_id、名称、描述、URL、标签)。通常下一步是使用get_mcp_server_details获取更多信息或直接使用add_mcp_server_config安装一个。

⚠️ 注意: 注册表目前包含数百个服务器,这些服务器可以在stdio模式下使用npx(Node.js)或uvx(Python)本地运行,基本操作不需要环境变量。未来的更新将扩大支持范围,包括付费和商业选项,这些选项可能需要环境密钥。

2. get_mcp_server_details

  • 描述: 从注册表中检索特定MCP服务器的详细信息,包括其完整的清单和基本安装建议(命令、环境变量)。在通过search_mcp_servers找到server_id后使用此命令获取更多信息,然后再考虑添加它。
  • 输入模式:
    • id(字符串,必需):从search_mcp_servers获得的MCPfinder的server_id。
  • 输出: 详细的服务器清单和安装提示。下一步是使用add_mcp_server_config安装服务器。

3. add_mcp_server_config

  • 描述: 在客户端应用的本地配置文件中添加或更新特定MCP服务器的配置(例如,Cursor的~/.cursor/mcp.json)。你必须提供要么client_typeconfig_file_path
  • 输入模式:
    • server_id(字符串,必需):服务器配置条目的唯一标识符(从search_mcp_servers获得的MCPfinder ID)。
    • client_type(字符串,可选):客户端应用的类型(动态确定的已知类型示例:'cursor''claude''windsurf')。与config_file_path互斥。用于标准客户端安装。
    • config_file_path(字符串,可选):目标JSON配置文件的绝对路径或以~开头的路径(家目录)(例如,/path/to/custom/mcp.json~/custom/mcp.json)。与client_type互斥。用于非标准位置或自定义客户端。
    • mcp_definition(对象,可选):定义服务器配置。如果省略,或某些字段缺失,则根据server_id从MCPfinder注册表获取默认值。
      • command(字符串数组,可选):命令及其参数(例如,["npx", "-y", "my-mcp-package"])。如果省略,或仅提供下面的env/workingDirectory,则从注册表获取默认命令。
      • env(对象,可选):环境变量(例如,{"API_KEY": "YOUR_KEY"})。如果省略command,则与默认值合并。
      • workingDirectory(字符串,可选):服务器进程的工作目录。如果省略command,则与默认值合并。
  • 输出: 成功或错误消息。
  • 注意: 存储在此JSON文件中的服务器配置键(在mcpServersservers下)是根据服务器注册的URL(通过server_id获得)自动生成的。如果无法从URL派生出合适的键,则使用提供的server_id作为后备。工具会自动检测是否使用mcpServersservers作为顶级键,基于现有文件结构,默认为mcpServers

4. remove_mcp_server_config

  • 描述: 从客户端应用的本地配置文件中删除特定MCP服务器的配置。你必须提供要么client_typeconfig_file_path。提供的server_id必须匹配添加服务器时使用的配置键名称(通常是根据服务器的URL派生的,见add_mmcp_server_config注释)。
  • 输入模式:
    • server_id(字符串,必需):要删除的服务器配置条目的唯一标识符(配置键名称)。
    • client_type(字符串,可选):客户端应用的类型(动态确定的已知类型示例:'cursor''claude''windsurf')。与config_file_path互斥。
    • config_file_path(字符串,可选):目标JSON配置文件的绝对路径或以~开头的路径(家目录)。与client_type互斥。
  • 输出: 成功或错误消息,指示是否找到了条目并删除了它。

安全注意事项

工具add_mcp_server_configremove_mcp_server_config会修改用户的本地系统文件。此服务器本身不执行权限检查;它完全依赖于调用客户端进行安全强制执行。

贡献

对于贡献,请联系:mcpfinder(dot)dev[at]domainsbyproxy(dot)com

许可证

本项目根据GNU Affero通用公共许可证v3.0许可——详见LICENSE文件。

这意味着你可以自由地使用(包括商业用途)、修改和分享它。但是,如果你运行的是修改过的版本,你也必须公开分享你的版本。