UNPKG

@yqg/mcp-cli

Version:

统一的MCP服务器脚手架工具,支持TypeScript和Python

156 lines (114 loc) 3.12 kB
# Yqg Mcp CLI 统一的 MCP(Model Context Protocol)服务器脚手架工具,支持 TypeScript 和 Python 两种语言。 ## 特性 - 🚀 快速创建 MCP 服务器项目 - 🔧 支持 TypeScript 和 Python 两种开发语言 - 📦 预配置的项目结构和依赖 ## 安装 ### 全局安装 ```bash npm install -g @yqg/mcp-cli ``` ## 使用方法 ### 交互式创建 ```bash yqg-mcp-cli my-mcp-server ``` 工具会引导您完成以下选择: - 项目名称 - 项目描述 - 开发语言(TypeScript 或 Python) - 传输模式 (Stdio 或 SSE) ### 命令行参数 ```bash yqg-mcp-cli my-server \ --name "我的MCP服务器" \ --description "一个示例MCP服务器" \ --language typescript \ --transport ``` #### 可用选项 - `-n, --name <name>`: 服务器名称 - `-d, --description <description>`: 服务器描述 - `-l, --language <language>`: 开发语言 (typescript|python) - `-t, --transport <transport>`: 传输方式 (stdio|sse) ## 生成的项目结构 ### TypeScript 项目 ``` my-server/ ├── package.json ├── tsconfig.json ├── README.md ├── .gitignore └── src/ ├── index.ts └── utils.ts ``` ### Python 项目 ``` my-server/ ├── pyproject.toml ├── README.md ├── .gitignore └── src/ └── my_server/ ├── __init__.py ├── __main__.py └── server.py ``` ## 开发工作流 ### TypeScript ```bash cd my-server npm install npm run build # 构建项目 npm run watch # 监听模式 ``` ### Python ```bash cd my-server uv sync --dev uv run my-server ``` ## 依赖要求 ### TypeScript 项目 - Node.js >= 18.0.0 - npm 或 yarn ### Python 项目 - Python >= 3.8 - uv(推荐)或 pip ## 如何使用changesets - 通过 `changeset` 提供的 `Prereleases` 模式 利用官方提供的 [Prereleases 模式](https://github.com/changesets/changesets/blob/main/docs/prereleases.md),通过 `pre enter <tag>` 命令进入先进入 pre 模式。 常见的tag如下所示: |名称|功能| |--|--| |alpha| 是内部测试版,一般不向外部发布,会有很多Bug,一般只有测试人员使用| |beta| 也是测试版,这个阶段的版本会一直加入新的功能。在Alpha版之后推出| |rc| Release Candidate) 系统平台上就是发行候选版本。RC版不会再加入新的功能了,主要着重于除错| ```bash $ pnpm changeset pre enter beta ``` 之后在此模式下的 `changeset publish` 均将默认走 `beta` 环境,下面在此模式下任意的进行你的开发,举一个例子如下: ```bash # 1-1 进行了一些开发... # 1-2 提交变更集 pnpm changeset # 1-3 提升版本 pnpm pkgs-version # changeset version # 1-4 发包 pnpm release # pnpm build && pnpm changeset publish --registry=... # 1-5 得到 1.0.0-beta.1 # 2-1 进行了一些开发... # 2-2 提交变更集 pnpm changeset # 2-3 提升版本 pnpm pkgs-version # 2-4 发包 pnpm release # 2-5 得到 1.0.0-beta.2 ``` 完成版本发布之后,退出 `Prereleases` 模式: ```bash $ pnpm changeset pre exit ```