LiteMCP 简介

LiteMCP 是一个基于 TypeScript 开发的轻量级框架,旨在帮助开发者优雅地构建 Model Context Protocol (MCP) 服务器。它提供了简洁的 API 来定义和管理 MCP 服务器的核心组件:工具 (Tools)、资源 (Resources) 和 Prompt 模板 (Prompts)。LiteMCP 框架易于上手,具有良好的 TypeScript 支持和内置的错误处理机制,并提供 CLI 工具方便开发和调试。

主要功能点:

  • 简化 MCP 服务器开发: 提供 TypeScript 框架,降低 MCP 服务器的开发门槛。
  • 工具 (Tools) 管理: 支持注册和管理可被 LLM 客户端调用的外部功能,例如数据查询、API 调用等。
  • 资源 (Resources) 管理: 支持托管和管理各种类型的数据资源,例如文件内容、数据库记录等,并提供统一的数据访问接口。
  • Prompt 模板 (Prompts) 管理: 支持定义和管理可复用的 Prompt 模板,方便 LLM 客户端发起标准化的交互。
  • 易于测试和调试: 内置 CLI 工具 'litemcp',可以方便地进行本地开发、测试和集成 MCP Inspector 进行可视化调试。

安装步骤:

  1. 确保已安装 Node.js 和 npm。
  2. 创建一个新的项目目录并进入该目录。
  3. 初始化 npm 项目: 'npm init -y'
  4. 安装 'litemcp' 和 'zod' 依赖: 'npm install litemcp zod'

服务器配置:

MCP 客户端需要配置 MCP 服务器的启动命令才能连接。对于 LiteMCP 服务器,配置信息如下:

{
  "serverName": "my-litemcp-server",  // 自定义服务器名称
  "command": "npx",                   // 启动命令,通常为 npx 或 node
  "args": [                            // 启动参数
    "litemcp",                        // 执行 litemcp CLI
    "dev",                            // 使用 dev 命令启动开发服务器
    "server.js"                       // 你的服务器入口文件,例如 server.js 或 server.ts 编译后的 js 文件
  ]
}

基本使用方法:

  1. 创建服务器入口文件 (例如 'server.js' 或 'server.ts'):

    // server.ts (或 server.js)
    import { LiteMCP } from "litemcp";
    import { z } from "zod";
    
    const server = new LiteMCP("my-mcp-server", "1.0.0"); // 创建 LiteMCP 服务器实例
    
    // 添加工具 (Tool)
    server.addTool({
      name: "add",
      description: "Add two numbers",
      parameters: z.object({
        a: z.number(),
        b: z.number(),
      }),
      execute: async (args) => {
        return args.a + args.b;
      },
    });
    
    // 添加资源 (Resource)
    server.addResource({
      uri: "file:///data/example.txt",
      name: "Example Text File",
      mimeType: "text/plain",
      async load() {
        return { text: "This is example content." };
      },
    });
    
    // 添加 Prompt 模板 (Prompt)
    server.addPrompt({
      name: "summarize",
      description: "Summarize text",
      arguments: [{ name: "text", description: "Text to summarize", required: true }],
      load: async (args) => {
        return 'Summarize the following text:\n${args.text}';
      },
    });
    
    server.start(); // 启动服务器
  2. 运行服务器: 在终端中,使用 'npx litemcp dev server.js' (或 'npx litemcp dev server.ts') 启动服务器。

  3. 使用 MCP 客户端连接服务器: 配置 MCP 客户端,使用上述 服务器配置 中的 JSON 配置连接到 LiteMCP 服务器。客户端即可调用服务器提供的工具、访问资源和使用 Prompt 模板。

提示:

  • 开发阶段可以使用 'npx litemcp dev server.js' 方便地启动和调试服务器。
  • 可以使用 'npx litemcp inspect server.js' 结合 MCP Inspector 进行更全面的可视化调试。
  • 详细的 API 文档和更多示例请参考 LiteMCP GitHub 仓库

信息

分类

开发者工具