mcpField
M
MCP Server Bridge Restish

MCP Server Bridge Restish

本地服务
github.com/high-u开发工具171 周前更新

关于 MCP Server Bridge Restish

MCP Server Bridge Restish 将自定义 HTTP API 提供的工具定义转换为 MCP 工具,从而连接 API 与 LLM。它面向希望客户端通过 MCP 调用现有端点的 API 服务维护者。

主要功能

  1. 01从 HTTP 端点获取工具定义
  2. 02动态注册 MCP 工具
  3. 03将工具调用转发至 API 端点
  4. 04支持配置 API 身份验证

适用场景

  1. 01向 MCP 客户端开放自定义 HTTP API
  2. 02让 LLM 调用现有 API 端点
  3. 03根据 API 定义更新可用工具

MCP 相关

从 API 服务的 /tools 端点获取工具定义,并注册为 MCP 客户端可用的工具。对这些工具的调用会转发到对应的 HTTP 端点。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"bridge-restish": {
"command": "npx",
"args": [
"-y",
"mcp-server-bridge-restish"
]
}
}
}
启动命令npx -y mcp-server-bridge-restish

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcp-server-bridge-restish

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Bridge Restish - MCP 服务

概述

此 MCP 服务充当桥接层,使大模型能够访问你的自定义 HTTP API 服务。它会从你的 HTTP API 服务获取工具定义,并动态将其注册为大模型可以调用的 MCP 工具。

工作原理

  1. 获取工具定义:从 ${BASE_URL}/tools 端点获取可用的工具定义
  2. 注册 MCP 工具:根据获取的工具定义动态注册 MCP 工具
  3. 代理 API 调用:当大模型调用工具时,将请求转发到相应的 HTTP API 端点

HTTP API 服务要求

说明

你的 HTTP API 服务应实现以下规范:

运行一个示例服务以供演示。

git clone https://github.com/high-u/mcp-server-bridge-restish.git
cd mcp-server-bridge-restish
node example/server.js 3000
工具定义端点

GET ${BASE_URL}/tools 应返回一个工具定义数组:

curl http://localhost:3000/tools

响应示例:

[
  {
    "name": "get_time",
    "description": "Get current date and time",
    "schema": {
      "type": "object",
      "properties": {},
      "required": []
    },
    "endpoint": "/get_time",
    "method": "get"
  },
  {
    "name": "get_birthday",
    "description": "Get a birthday for a given name",
    "schema": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "description": "The name to get birthday for"
        }
      },
      "required": [
        "name"
      ]
    },
    "endpoint": "/get_birthday",
    "method": "get"
  }
]
工具执行端点

每个工具都通过其指定的端点和方法执行:

  • GET ${BASE_URL}/get_time → 以 JSON 格式返回当前时间
curl http://localhost:3000/get_time
{
  "time": "2025-06-22T03:53:49.675Z",
  "timestamp": 1750564429675
}
  • GET ${BASE_URL}/get_birthday?name=XXX → 以 JSON 格式返回 XXX 的生日
curl "http://localhost:3000/get_birthday?name=John"
{
  "name": "John",
  "birthday": "1973-11-08"
}

响应架构由你决定。如何使用它由大模型决定。

使用方法

配置 Claude Desktop

将以下内容添加到你的 claude_desktop_config.json 中:

{
  "mcpServers": {
    "bridge-restish": {
      "command": "mcp-server-bridge-restish",
      "args": ["http://localhost:3000", "server-api-key"],
      "env": {
        "BASE_URL": "http://localhost:3000",
        "AUTH_TYPE": "Bearer",
        "API_KEY": "server-api-key"
      }
    }
  }
}

“BASE_URL”为必填项。根据需要设置“API_KEY”和“AUTH_TYPE”。

用户提示词示例

What time is it?
How old is John this year?

评论

支持 Markdown

第一次接触 MCP?

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

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