使用说明

项目简介

本项目提供了一个基于 Model Context Protocol (MCP) 的简单服务器和客户端示例,使用 TypeScript SDK 构建。服务器端实现了资源的管理和访问功能,客户端演示了如何连接到服务器并请求资源信息。

主要功能点

  • 资源列表:MCP 服务器可以提供可访问的资源列表,客户端可以获取这些资源的信息。
  • 资源读取:MCP 服务器允许客户端根据资源 URI 读取资源的具体内容。
  • 基础示例:项目提供了一个基础但可运行的 MCP 服务器和客户端示例,帮助开发者快速理解 MCP 协议的工作原理。
  • Stdio 传输:服务器和客户端之间使用标准的输入输出流 (stdio) 进行通信。

安装步骤

  1. 确保已安装 Node.js (v16 或更高版本) 和 npm。
  2. 克隆仓库到本地:
    git clone https://github.com/JoeBuildsStuff/mcp-server-client.git
  3. 进入项目目录:
    cd mcp-server-client
  4. 安装项目依赖:
    npm install

服务器配置

MCP 客户端需要配置以下信息才能连接到此 MCP 服务器。配置信息通常以 JSON 格式提供给客户端,例如:

{
  "serverName": "example-server",
  "transport": {
    "type": "stdio",
    "command": "node",
    "args": ["--loader", "ts-node/esm", "src/index.ts"]
  }
}
  • 'serverName': MCP 服务器的名称,本示例中为 "example-server"。
  • 'transport.type': 传输协议类型,本示例中使用 'stdio'。
  • 'transport.command': 启动 MCP 服务器的命令,这里使用 'node' 运行 Node.js。
  • 'transport.args': 启动命令的参数数组。'--loader ts-node/esm' 用于允许 'node' 运行 TypeScript 代码,'src/index.ts' 是服务器代码的入口文件。

基本使用方法

  1. 打开两个终端窗口。
  2. 在一个终端窗口中,启动 MCP 服务器:
    npm run start:server
    服务器启动后,会显示 "Server connected and ready!" 信息。
  3. 在另一个终端窗口中,启动 MCP 客户端:
    npm run start:client
    客户端启动后,会连接到服务器,并请求资源列表和 'file:///example.txt' 资源的内容,并在控制台输出结果。

通过以上步骤,您可以体验基本的 MCP 服务器和客户端交互流程。

信息

分类

开发者工具