使用说明

项目简介

local_mcp 是一个基于 Node.js 构建的本地模型上下文协议 (MCP) 服务器实现。它旨在帮助开发者快速搭建一个符合 MCP 标准的后端服务,以便与各种支持 MCP 协议的 LLM 客户端进行交互。该服务器提供基本的文本处理和聊天功能,可以作为开发和测试 MCP 应用的基础。

主要功能点

  • MCP 协议兼容: 遵循 Model Context Protocol 规范,支持标准的 JSON-RPC 消息格式。
  • WebSocket 通信: 使用 WebSocket 作为主要的通信协议,实现实时的双向通信。
  • 文本处理能力: 支持文本补全、文本嵌入、文本分词等基本的文本处理功能。
  • 聊天功能: 支持多轮对话,可以用于构建简单的聊天机器人应用。
  • 健康检查和信息接口: 提供 '/health' 和 '/info' HTTP 接口,用于监控服务器状态和获取服务器信息。
  • 测试客户端: 包含一个简单的测试客户端,方便开发者进行功能测试和调试。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/bensonms/local_mcp.git
    cd local_mcp
  2. 安装依赖: 确保已安装 Node.js 和 npm。在项目根目录下运行:
    npm install

服务器配置

MCP 客户端需要配置以下信息以连接到 'local_mcp' 服务器。以下是推荐的 JSON 格式配置,您需要在 MCP 客户端中填入这些信息。

{
  "serverName": "local_mcp_server",  // MCP 服务器的名称,可以自定义
  "command": "npm",                   // 启动服务器的命令,这里使用 npm
  "args": ["start"]                   // 启动命令的参数,"start" 对应 package.json 中的 start 脚本
}

配置参数说明:

  • 'serverName': 服务器的名称,客户端用于标识连接的服务器,可以自定义。
  • 'command': 启动服务器进程的命令。由于项目使用 npm 管理,并且在 'package.json' 中定义了 'start' 脚本,所以这里设置为 '"npm"'。
  • 'args': 'command' 命令的参数。'npm start' 用于运行 'package.json' 中定义的 'start' 脚本,启动服务器。

注意: 客户端通常会读取这些配置信息,并根据 'command' 和 'args' 执行命令来启动 MCP 服务器进程,并建立连接。请确保客户端能够正确执行 'npm start' 命令,并且 Node.js 环境配置正确。

基本使用方法

  1. 启动开发服务器: 在项目根目录下运行以下命令启动开发服务器:

    npm run dev

    服务器默认监听 'http://localhost:3000' 和 'ws://localhost:3000'。

  2. 启动测试客户端: 在另一个终端窗口中,运行以下命令启动测试客户端:

    npm run test-client

    测试客户端会自动连接到运行中的服务器,并发送初始化请求和文本补全请求,您可以在控制台看到客户端和服务端之间的通信信息。

  3. 健康检查: 您可以使用 curl 或浏览器访问以下 URL 检查服务器健康状态:

    curl http://localhost:3000/health

    正常情况下,会返回 '{"status":"ok"}'。

  4. 获取服务器信息: 您可以使用 curl 或浏览器访问以下 URL 获取服务器能力信息:

    curl http://localhost:3000/info

    正常情况下,会返回包含服务器能力信息的 JSON 数据,例如 '{"capabilities":{"text":{},"chat":{}}}'。

  5. 集成到 MCP 客户端: 将上面提供的服务器配置信息填入您的 MCP 客户端配置中,客户端应该能够根据配置启动 'local_mcp' 服务器并与之建立 WebSocket 连接,然后您就可以使用客户端向服务器发送 MCP 请求,例如文本补全、聊天等。

信息

分类

AI与计算