Litemcp

Litemcp

🚀 LiteMCP 中文文档

LiteMCP 是一个 TypeScript 框架,可用于优雅地构建 MCP(模型上下文协议)服务器,为开发者提供便捷高效的开发体验。

⚠️ 重要提示

由于官方 SDK 已经提供了与本项目类似的高级别 API,因此该项目将不再维护。

如果你喜欢此项目中的 CLI 命令,请独立使用它们:https://github.com/wong2/mcp-cli

✨ 主要特性

  • 支持简单工具、资源、提示定义。
  • 提供完整的 TypeScript 支持。
  • 内置 日志记录 功能。
  • 具备内置错误处理机制。
  • 内置 CLI 用于 测试和调试。
  • 内置对 SSE 传输 的支持。

📦 安装指南

npm install litemcp zod

🚀 快速开始

import { LiteMCP } from "litemcp";
import { z } from "zod";

const server = new LiteMCP("demo", "1.0.0");

server.addTool({
name: "add",
description: "添加两个数字",
parameters: z.object({
a: z.number(),
b: z.number(),
}),
execute: async (args) => {
return args.a + args.b;
},
});

server.addResource({
name: "resource-example",
description: "这是一个示例资源",
content: "Hello, World!",
});

server.start();

运行以下命令以测试服务器:

node server.js

📚 详细文档

核心概念

工具(Tools)

工具是定义可以执行操作的函数。例如,一个简单的计算器工具。

server.addTool({
name: "calculator",
description: "A simple calculator",
parameters: z.object({
a: z.number(),
b: z.number(),
}),
async execute(args) {
return {
add: args.a + args.b,
subtract: args.a - args.b
};
},
});

资源(Resources)

资源表示可以访问的静态内容或动态生成的内容。

server.addResource({
name: "static-resource",
description: "A static resource example",
content: "This is a static resource.",
});

server.addDynamicResource(async () => {
return {
name: "dynamic-resource",
description: "A dynamic resource example",
content: await fetch('https://api.example.com/data'),
};
});

提示(Prompts)

提示用于定义交互式对话流程。

server.addPrompt({
name: "greeting-prompt",
description: "A simple greeting prompt",
async execute() {
const name = await server.prompt("请输入你的名字:");
return `你好,${name}!`;
},
});

日志记录(Logging)

LiteMCP 提供了内置的日志记录功能。

server.log("信息日志");
server.debug("调试日志");
server.error("错误日志");

运行你的服务器

启动服务器

默认情况下,服务器使用 stdio 传输:

server.start();

你也可以指定自定义端口和其他选项:

server.start({
port: 3000,
hostname: 'localhost',
});

调试和日志记录

你可以通过以下命令进行调试:

node server.js --inspect

同时,LiteMCP 提供了内置的调试功能:

server.debug("调试信息");

SSE 传输

服务器默认运行 stdio 传输。你也可以使用 SSE 模式:

server.start({
transportType: "sse",
sse: {
endpoint: "/sse",
port: 8080,
},
});

这将启动服务器并在 http://localhost:8080/sse 监听 SSE 连接。

展示

如果你使用 LiteMCP 开发了服务器,请通过提交 PR 的方式展示在这里!

发展计划

  • 添加对资源模板的支持

相关项目

  • mcp-cli - 用于测试和调试 MCP 服务器的 CLI
  • mcpservers.org - 精选的 MCP 服务器列表
  • FastMCP - 一个用于 MCP 服务器开发的 Python 库,本项目的灵感来源
  • 0 关注
  • 0 收藏,20 浏览
  • system 提出于 2025-09-18 13:18

相似服务问题

相关AI产品