Token导航 LogoToken导航TokenDH.com
MCP Weapp CLI logo
开发工具未说明官方级别未说明来源级核验

MCP Weapp CLI

MCP Server

一个完整的Model Context Protocol (MCP)服务器实现,封装微信开发者工具CLI的全部功能,让AI助手能够调用小程序开发工具。

工具数

37

提示词数

0

GitHub Stars

3

资源数

0
开发工具TypeScriptClaude命令行工具Claude DesktopClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

birchcraft

提供方

birchcraft

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

微信小程序开发者工具 MCP 服务器

一个完整的 Model Context Protocol (MCP) 服务器实现

封装微信开发者工具 CLI 的全部功能,让 AI 助手能够调用小程序开发工具


功能特性

  • 🔧 完整 CLI 覆盖: 支持微信开发者工具 CLI 的全部 20+ 个命令
  • 🌐 HTTP API 支持: 支持通过 HTTP API 调用开发者工具功能
  • 🤖 AI 集成: 让 AI 助手能够通过自然语言调用小程序开发工具
  • 📦 类型安全: 使用 TypeScript 开发,提供完整的类型定义
  • 🔒 错误处理: 完善的错误处理和参数验证
  • 📝 资源与提示符: 支持 MCP Resources 和 Prompts
  • 🌐 跨平台: 支持 Windows、macOS 和 Linux

目录


支持的工具

登录管理

工具名称描述
weapp_login登录微信开发者工具(支持二维码终端显示/图片/Base64)
weapp_check_login检查当前登录状态

预览与上传

工具名称描述
weapp_preview生成预览二维码,用于在真机上预览小程序
weapp_auto_preview自动预览,自动打开 IDE 并生成二维码
weapp_upload上传代码到微信公众平台,用于提交审核或发布体验版

项目管理

工具名称描述
weapp_open_tool启动微信开发者工具(不打开项目),返回 HTTP 端口号
weapp_open_project打开指定的小程序项目,返回 HTTP 端口号
weapp_open_other以独立窗口模式打开项目
weapp_close关闭指定项目或当前项目
weapp_quit完全退出微信开发者工具
weapp_reset_fileutils重置文件监听,解决文件监听失效问题
weapp_http_detect_port检测 HTTP 服务端口号(从 .ide 文件读取)

构建

工具名称描述
weapp_build_npm构建 npm 包,将 node_modules 构建为小程序可用模块
weapp_clear_cache清除开发者工具缓存(数据/文件/编译/授权/网络/会话)

自动化测试

工具名称描述
weapp_auto开启自动化功能,启用 WebSocket 控制接口
weapp_auto_replay执行自动化测试回放

云开发

工具名称描述
weapp_cloud_env_list获取云开发环境列表
weapp_cloud_functions_list获取指定环境下的云函数列表
weapp_cloud_functions_info获取云函数详细信息
weapp_cloud_functions_deploy部署云函数到云端
weapp_cloud_functions_inc_deploy增量部署云函数(更快)
weapp_cloud_functions_download从云端下载云函数代码

状态检测

工具名称描述
weapp_status检测开发者工具运行状态、端口信息、进程情况
weapp_kill_all强制关闭所有开发者工具实例

HTTP API 工具

工具名称描述
weapp_http_loginHTTP 方式登录
weapp_http_check_loginHTTP 方式检查登录状态
weapp_http_previewHTTP 方式预览
weapp_http_uploadHTTP 方式上传代码
weapp_http_auto_previewHTTP 方式自动预览
weapp_http_build_npmHTTP 方式构建 npm
weapp_http_clear_cacheHTTP 方式清除缓存
weapp_http_openHTTP 方式打开工具/项目
weapp_http_closeHTTP 方式关闭项目
weapp_http_quitHTTP 方式退出工具
weapp_http_reset_fileutilsHTTP 方式重置文件监听
weapp_http_cloud_env_listHTTP 方式获取云环境列表
weapp_http_cloud_functions_listHTTP 方式获取云函数列表

快速开始

前置要求

  • Node.js >= 18
  • 微信开发者工具(已安装并开启服务端口)

使用 npx 运行(推荐)

无需安装,直接在 MCP 客户端配置中使用:

{
  "mcpServers": {
    "weapp-devtools": {
      "command": "npx",
      "args": ["-y", "@birchcraft/mcp-weapp-cli"],
      "env": {
        "WEAPP_PORT": "9420",
        "WEAPP_LANG": "zh"
      }
    }
  }
}

安装

全局安装

npm install -g @birchcraft/mcp-weapp-cli

从源码安装

# 克隆仓库
git clone https://github.com/birchcraft/mcp-weapp-cli.git
cd mcp-weapp-cli

# 安装依赖
npm install

# 编译
npm run build

# 创建到源码的链接(可选)
npm link

⚠️ 重要约束提醒

1. HTTP 端口 vs 自动化端口

这是最常见的混淆点,请务必注意:

端口类型参数/环境变量用途
HTTP 端口--port / WEAPP_PORTCLI 和 HTTP API 通信端口
自动化端口--auto-port自动化测试 WebSocket 端口
  • weapp_open_toolweapp_open_project 中的 httpPort 参数指定的是 HTTP 服务端口
  • weapp_auto 中的 autoPort 参数指定的是 自动化 WebSocket 端口
  • 两者完全不同,不可混淆!

2. 实例唯一性保证

weapp_open_toolweapp_open_project 会自动确保只有一个开发者工具实例运行:

  • 启动前会检测并关闭其他实例
  • 如果关闭失败,会返回错误提示

3. 端口不匹配检测

如果启动时指定的 HTTP 端口与实际启动的端口不同,工具会明确提示:

⚠️ 警告: HTTP 端口不匹配

指定的端口: 9420
实际的端口: 49283 (与指定端口不同!)

建议: 先执行 weapp_quit 关闭工具,然后重新启动。

4. 自动化端口延迟

自动化服务启动后可能有延迟,工具会:

  • 等待最多 8 秒检测端口
  • 明确告知实际监听状态是否符合预期
  • 提供排查建议

5. CLI vs HTTP 使用建议

场景推荐方式原因
启动/关闭工具CLI更可靠,直接控制进程
开启自动化CLI需要传递 auto-port 等参数
预览/上传CLI (默认)更稳定
清除缓存HTTP支持更精细的缓存类型控制

配置

环境变量

变量名说明默认值
WEAPP_CLI_PATHCLI 工具路径自动检测
WEAPP_PORTHTTP 服务端口9420
WEAPP_LANG语言 (en/zh)zh
WEAPP_DEBUG调试模式false

CLI 路径自动检测

如果没有设置 WEAPP_CLI_PATH,服务器会自动检测以下常见路径:

Windows:

  • C:\Program Files (x86)\Tencent\微信web开发者工具\cli.bat
  • C:\Program Files\Tencent\微信web开发者工具\cli.bat
  • %USERPROFILE%\AppData\Local\微信开发者工具\cli.bat

macOS:

  • /Applications/wechatwebdevtools.app/Contents/MacOS/cli
  • /Applications/微信开发者工具.app/Contents/MacOS/cli

MCP 客户端配置

Claude Desktop

编辑配置文件:

  • Windows: %APPDATA%/Claude/claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "weapp-devtools": {
      "command": "npx",
      "args": ["-y", "@birchcraft/mcp-weapp-cli"],
      "env": {
        "WEAPP_PORT": "9420",
        "WEAPP_LANG": "zh"
      }
    }
  }
}

Cursor

在 Cursor 设置中找到 MCP 配置,添加上述相同的配置。


使用示例

登录开发者工具

使用 weapp_login 工具登录微信开发者工具

预览项目

使用 weapp_preview 工具为项目 D:\Projects\MyMiniApp 生成预览二维码

上传代码

使用 weapp_upload 工具上传项目 D:\Projects\MyMiniApp,版本 1.0.0,描述 "初始版本"

构建 npm

使用 weapp_build_npm 工具为项目 D:\Projects\MyMiniApp 构建 npm

项目结构

mcp-weapp-cli/
├── src/                          # 源代码目录
│   ├── index.ts                  # 主入口,服务器启动
│   ├── server.ts                 # MCP 服务器核心实现
│   ├── cli-client.ts             # CLI 客户端,封装微信 CLI 调用
│   ├── http-client.ts            # HTTP 客户端,封装 HTTP API 调用 (NEW)
│   ├── config.ts                 # 配置管理(环境变量、自动检测)
│   ├── types.ts                  # TypeScript 类型定义
│   ├── tools/                    # 工具定义(按功能分类)
│   │   ├── index.ts              # 工具注册中心,聚合所有工具
│   │   ├── auth.ts               # 登录认证工具
│   │   ├── preview.ts            # 预览上传工具
│   │   ├── project.ts            # 项目管理工具(含 open_tool, open_project)
│   │   ├── build.ts              # 构建工具
│   │   ├── automation.ts         # 自动化测试工具
│   │   ├── cloud.ts              # 云开发工具
│   │   ├── status.ts             # 状态检测工具
│   │   └── http.ts               # HTTP API 工具 (NEW)
│   └── utils/                    # 工具函数
│       ├── helpers.ts            # 辅助函数
│       ├── logger.ts             # 日志模块
│       ├── result-formatter.ts   # 结果格式化
│       └── tool-wrapper.ts       # 工具包装器
├── dist/                         # TypeScript 编译输出
├── docs/                         # 文档目录
│   └── meta/                     # 元文档
│       ├── AGENT_WORKFLOW.md     # Agent 工作规范
│       └── PROJECT_HANDOVER.md   # 项目交接本
├── tests/                        # 测试目录(待补充)
├── package.json                  # 包配置
├── tsconfig.json                 # TypeScript 配置
├── README.md                     # 本文件
└── LICENSE                       # MIT 许可证

架构设计

整体架构

┌─────────────────────────────────────────────────────────────┐
│                      MCP Client                             │
│              (Claude Desktop / Cursor / etc.)               │
└───────────────────────┬─────────────────────────────────────┘
                        │ JSON-RPC / stdio
┌───────────────────────▼─────────────────────────────────────┐
│                   MCP Server                                │
│  ┌─────────────┐  ┌──────────────┐  ┌─────────────────────┐ │
│  │   Tools     │  │  Resources   │  │      Prompts        │ │
│  │  (35 tools) │  │(CLI status,  │  │ (setup guide,       │ │
│  │             │  │ config)      │  │  deploy checklist)  │ │
│  └──────┬──────┘  └──────────────┘  └─────────────────────┘ │
│         │                                                   │
│  ┌──────▼────────────────────────────────────────────────┐  │
│  │              CLI Client + HTTP Client                 │  │
│  │  ┌─────────────┐  ┌──────────────┐  ┌──────────────┐  │  │
│  │  │ ConfigMgr   │  │   CLIExec    │  │  HTTPReq     │  │  │
│  │  │(env/args)   │  │(spawn proc)  │  │(fetch api)   │  │  │
│  │  └─────────────┘  └──────────────┘  └──────────────┘  │  │
│  └───────────────────────┬────────────────────┬──────────┘  │
└──────────────────────────┼────────────────────┼─────────────┘
                           │                    │
              ┌────────────┘                    └──────────┐
              ▼                                            ▼
┌──────────────────────────┐                ┌────────────────┐
│ WeChat DevTools CLI      │                │ HTTP Service   │
│ (cli.bat / cli)          │                │ (port in .ide) │
└──────────┬───────────────┘                └────────┬───────┘
           │                                         │
           └────────────────┬────────────────────────┘
                           │
┌──────────────────────────▼──────────────────────────────────┐
│              WeChat DevTools IDE                            │
└─────────────────────────────────────────────────────────────┘

核心模块说明

模块职责关键文件
MCP Server处理 MCP 协议通信,管理 Tools/Resources/Promptsserver.ts
CLI Client封装微信 CLI 调用,管理进程生命周期cli-client.ts
HTTP Client封装 HTTP API 调用,端口检测http-client.ts
Config Manager管理配置,自动检测 CLI 路径config.ts
Tools实现具体工具逻辑,按功能分类tools/*.ts
Utils辅助函数,日志、验证等utils/*.ts

工具分类架构

tools/
├── auth.ts          # 认证类工具
├── preview.ts       # 预览发布类工具
├── project.ts       # 项目管理类工具(open_tool, open_project)
├── build.ts         # 构建类工具
├── automation.ts    # 自动化测试类工具
├── cloud.ts         # 云开发类工具
├── status.ts        # 状态检测类工具
└── http.ts          # HTTP API 工具

开发指南

环境准备

# 克隆仓库
git clone https://github.com/birchcraft/mcp-weapp-cli.git
cd mcp-weapp-cli

# 安装依赖
npm install

# 编译
npm run build

开发命令

# 开发模式(自动编译)
npm run dev

# 运行测试
npm test

# 代码格式化
npm run format

# 代码检查
npm run lint

# 构建发布
npm run build

添加新工具

  1. 阅读微信 CLI 文档,确认命令参数
  2. 更新 types.ts,添加相关类型定义
  3. 更新 cli-client.ts,添加 CLI 调用方法
  4. 创建/修改工具文件src/tools/xxx.ts
  5. 注册到 tools/index.ts,导出工具定义
  6. 编译检查npm run build
  7. 本地测试:启动服务器验证
  8. 更新文档:README.md 等

详细步骤参考 Agent 工作规范


贡献指南

我们欢迎所有形式的贡献,无论是新功能、bug 修复还是文档改进。

提交 Issue

如果你发现了 bug 或有功能建议,请通过 GitHub Issues 提交:

  1. 检查是否已有相关 issue
  2. 使用清晰的标题描述问题
  3. 提供复现步骤(如果是 bug)
  4. 说明期望的行为

提交 Pull Request

  1. Fork 仓库 并创建你的分支 (git checkout -b feature/amazing-feature)
  2. 提交修改 (git commit -m 'feat: add amazing feature')
  3. 推送到分支 (git push origin feature/amazing-feature)
  4. 创建 Pull Request

提交信息规范

我们使用 Conventional Commits 规范:

(): 

Type 类型:

  • feat: 新功能
  • fix: Bug 修复
  • docs: 文档更新
  • style: 代码格式
  • refactor: 重构
  • test: 测试相关
  • chore: 构建/工具相关

Scope 范围:

  • tools: 工具相关
  • cli: CLI 客户端
  • server: MCP 服务器
  • types: 类型定义
  • utils: 工具函数

代码规范

  • 使用 TypeScript 编写代码
  • 遵循现有代码风格
  • 为新功能添加类型定义
  • 确保 npm run build 编译通过

文档


路线图

  • [x] 完整的 CLI V2 命令支持
  • [x] 统一的错误处理和结果格式化
  • [x] 区分启动工具和启动项目
  • [x] HTTP API 支持
  • [x] HTTP 端口检测
  • [x] 自动化端口监听检测
  • [ ] 添加单元测试覆盖
  • [ ] 支持更多自动化测试功能
  • [ ] 完善中文/英文文档

许可证

MIT License

Copyright (c) 2024 birchcraft


如果这个项目对你有帮助,请给我们一个 ⭐️ Star!

目录标签

目录标签

开发工具TypeScriptClaude命令行工具小程序开发本地部署开发者工具CLI工具HTTPAPIAI集成

支持客户端

Claude DesktopClaudeCursor

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

37

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP