首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
首页
学习
活动
专区
圈层
工具
MCP广场
MCP广场 >详情页
mcp-starter-template2025-05-210分享
github
一个用于创建 Model Context Protocol 服务器的生产就绪型模板,提供 TypeScript 支持,并为高效测试、开发和部署提供工具。
By StevenStavrakis
2025-05-210
github
详情内容

MCP 服务器启动器

一个用于使用 TypeScript 构建 Model Context Protocol (MCP) 服务器的生产就绪启动模板。

🚀 快速开始

  1. 克隆仓库
  2. 安装依赖项:
    bun install
    

✨ 主要特性

  • 使用 Bun 进行快速测试和开发
  • 使用 Biome 进行代码检查和格式化
  • 使用 standard-version 进行自动版本管理
  • 清晰、可维护的项目结构

📂 项目结构

mcp-starter/
├── src/
│   ├── tools/          # MCP tools implementation
│   ├── utils/          # Shared utilities
│   ├── main.ts         # Server entry point
│   └── types.ts        # Shared type definitions
├── tests/              # Test files
├── biome.json          # Linting configuration
├── tsconfig.json       # TypeScript configuration
└── package.json        # Project dependencies

⚙️ 配置

创建新工具

该项目包含一个脚本,可以帮助创建新的 MCP 工具:

bun run scripts/create-tool.ts <tool-name>

这将:

  1. src/tools/<tool-name> 下创建一个新的工具目录
  2. 生成基本的工具结构,包括:
    • index.ts(主要实现)
    • schema.ts(工具参数的 JSON 模式)
    • test.ts(测试文件)
  3. 更新工具索引文件以导出新工具

示例:

bun run scripts/create-tool.ts weather

🛠️ 开发

  • 运行测试bun test
  • 格式化代码bun run format
  • 代码检查bun run lint
  • 构建项目bun run build

要将您的开发 MCP 服务器添加到 Claude Desktop 中:

  1. 构建项目:
    bun run build
    
  2. 添加到您的 Claude Desktop 配置中:
    // 仅当需要向服务器传递参数时才需要该参数
    {
      "mcpServers": {
        "your-server-name": {
          "command": "node",
          "args": ["/path/to/your/project/dist/main.js", "some_argument"]
        }
      }
    }
    

📜 版本管理

该项目使用 standard-version 进行自动化版本管理。运行 bun run release 以创建新版本。

提交信息格式

  • feat:新功能(增加小版本号)
  • fix:错误修复(增加补丁版本号)
  • BREAKING CHANGE:破坏性变更(增加主版本号)

📦 发布到 npm

  1. 确保您已登录 npm:
    npm login
    
  2. 构建项目:
    bun run build
    
  3. 发布包:
    npm publish
    

请记得在发布新版本之前使用 bun run release 更新版本号。

从 npm 安装(发布后)

添加到您的 Claude Desktop 配置中:

// You only need the argument if you need to pass arguments to your server
{
  "mcpServers": {
    "your-server-name": {
      "command": "npx",
      "args": ["-y", "your-package-name", "some_argument"]
    }
  }
}
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档