easy-mcp

easy-mcp

使用Typescript编写的极其简单的模型上下文协议服务器。

Easy MCP Quick Start Guide

Easy MCP 是一个使用 TypeScript 创建 Model Context Protocol (MCP) 服务器的简单框架。

安装

# 使用 pnpm
pnpm install easy-mcp

# 或使用 bun
bun add easy-mcp

基本用法

import EasyMCP from "easy-mcp";

const mcp = EasyMCP.create("my-mcp-server", {
  version: "0.1.0",
});

// 定义资源
mcp.resource({
  uri: "dir://desktop",
  name: "Desktop Directory",
  fn: async () => {
    return "file://desktop/file1.txt\nfile://desktop/file2.txt";
  },
});

// 定义资源模板
mcp.template({
  uriTemplate: "file://{filename}",
  fn: async ({ filename }) => {
    return `Contents of ${filename}`;
  },
});

// 定义工具
mcp.tool({
  name: "greet",
  inputs: [
    {
      name: "name",
      type: "string",
      required: true,
    },
  ],
  fn: async ({ name }) => {
    return `Hello, ${name}!`;
  },
});

// 定义提示
mcp.prompt({
  name: "introduction",
  args: [
    {
      name: "name",
      type: "string",
      required: true,
    },
  ],
  fn: async ({ name }) => {
    return `Hi there! My name is ${name}. It's nice to meet you!`;
  },
});

// 启动服务器
mcp.serve().catch(console.error);

主要 API

  • EasyMCP.create(name, options) - 创建服务器实例
  • mcp.resource(config) - 定义资源
  • mcp.template(config) - 定义资源模板
  • mcp.tool(config) - 定义工具
  • mcp.prompt(config) - 定义提示
  • mcp.serve() - 启动服务器

限制

  • 不支持采样
  • 不支持 SSE

注意: Easy MCP 目前处于测试阶段,首次正式发布将在2025年1月。

许可证

MIT