使用说明

项目简介

mcp-custom-server 是一个基于 Model Context Protocol (MCP) 的自定义服务器实现,它使用 TypeScript SDK 构建,旨在为大型语言模型 (LLM) 应用提供可扩展的上下文服务框架。该服务器允许开发者轻松定义和管理资源、工具和Prompt模板,从而增强 LLM 的功能和灵活性。

主要功能点

  • 完整的MCP协议支持: 实现了MCP协议的核心功能,可以处理MCP客户端的请求和响应。
  • 资源管理: 支持托管和管理各种类型的资源,并提供标准化的数据访问能力。
  • 工具注册与执行: 允许注册和执行外部工具,使 LLM 能够调用外部功能,扩展其能力边界。
  • Prompt模板: 支持定义和渲染Prompt模板,实现可定制的 LLM 交互模式。
  • 多种传输协议: 默认支持 Stdio 传输协议,方便集成到各种环境。
  • 可扩展性与定制化: 采用模块化设计,易于扩展和定制资源、工具和Prompt模板。
  • TypeScript开发: 使用 TypeScript 开发,提供类型安全和良好的开发者体验。

安装步骤

  1. 克隆仓库:
    git clone https://github.com/WhenMoon-afk/mcp-custom-server.git
    cd mcp-custom-server
  2. 安装依赖:
    npm install
  3. 构建项目:
    npm run build

服务器配置 (MCP客户端配置)

MCP客户端需要配置以下JSON信息以连接到此MCP服务器:

{
  "serverName": "Custom MCP Server",  // MCP服务器名称,与服务器配置一致
  "command": "node",                 // 启动服务器的命令,这里使用Node.js运行
  "args": ["dist/index.js"]         // 启动命令的参数,指向编译后的服务器入口文件
}

配置参数说明:

  • 'serverName': 服务器名称,应与 'src/config.ts' 中 'config.serverName' 的值保持一致。
  • 'command': 运行服务器端程序的命令。由于该服务器是 Node.js 应用,因此使用 'node' 命令。
  • 'args': 传递给 'command' 的参数数组。'dist/index.js' 是构建后服务器的入口文件路径。

基本使用方法

  1. 启动服务器:

    npm start

    或使用开发模式(带自动重载):

    npm run dev
  2. 配置MCP客户端: 将上述提供的服务器配置信息填入您的MCP客户端应用中。

  3. 客户端与服务器交互: MCP客户端将通过配置的命令和参数启动服务器,并通过 Stdio 协议与服务器进行通信,从而访问服务器提供的资源、工具和Prompt模板。

    您可以参考仓库中的 'src/resources.ts', 'src/tools.ts', 和 'src/prompts.ts' 文件,了解如何添加和自定义资源、工具和Prompt模板。修改这些文件后,重新构建并启动服务器即可应用您的自定义功能。

信息

分类

开发者工具