Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Feishu/Lark MCP server + CLI tool. 85 tools, 3 auth layers. Send as user via cookie+protobuf.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
LARK_COOKIE, LARK_APP_ID, LARK_APP_SECRET, LARK_USER_ACCESS_TOKEN, LARK_USER_REFRESH_TOKEN「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"feishu-user-plugin": {
"command": "npx",
"args": [
"-y",
"feishu-user-plugin"
],
"env": {
"LARK_COOKIE": "your-value",
"LARK_APP_ID": "your-value",
"LARK_APP_SECRET": "your-value",
"LARK_USER_ACCESS_TOKEN": "your-value",
"LARK_USER_REFRESH_TOKEN": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add feishu-user-plugin --env LARK_COOKIE=your-value --env LARK_APP_ID=your-value --env LARK_APP_SECRET=your-value --env LARK_USER_ACCESS_TOKEN=your-value --env LARK_USER_REFRESH_TOKEN=your-value -- npx -y feishu-user-plugin動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"feishu-user-plugin": {
"command": "npx",
"args": [
"-y",
"feishu-user-plugin"
],
"env": {
"LARK_COOKIE": "your-value",
"LARK_APP_ID": "your-value",
"LARK_APP_SECRET": "your-value",
"LARK_USER_ACCESS_TOKEN": "your-value",
"LARK_USER_REFRESH_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"feishu-user-plugin": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"feishu-user-plugin"
],
"env": {
"LARK_COOKIE": "your-value",
"LARK_APP_ID": "your-value",
"LARK_APP_SECRET": "your-value",
"LARK_USER_ACCESS_TOKEN": "your-value",
"LARK_USER_REFRESH_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
LARK_APP_ID envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント EthanQC で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:LARK_COOKIE, LARK_APP_SECRET, LARK_USER_ACCESS_TOKEN, LARK_USER_REFRESH_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.3.14)がレジストリに届いたのは6 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Fomu MCP
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
中文 · English · Docs · CHANGELOG · npm
飞书 / Lark MCP 服务器,覆盖 IM、文档、多维表格、知识库、云空间、日历、任务 v2、OKR、实时事件。85 工具 · 3 层鉴权 · 9 MCP prompts · MIT licensed · Node ≥18。
兼容 Claude Code、Codex、Cursor、Windsurf、VS Code、Claude Desktop、OpenClaw 等 MCP 客户端。
用户身份发消息有两条路径:飞书官方 OAuth scope `im:message.send_as_user`(需要创建自建应用 + 管理员审批),或本仓的 cookie + protobuf 路径(cookie 抓出来就跑)。本仓不再是物理性独家,但仍然是"个人开发者 / 没有管理员权限 / 想快速试用户身份发消息"场景的简便选项。
⚠ 注意限定范围:cookie 路径"零应用门槛"只对纯文本 / post 类用户身份发消息严格成立:
send_to_user/send_to_group/send_as_user/send_post_as_user/batch_send(text/post 模式)5 个工具。send_image_as_user/send_file_as_user的发送本身走 cookie,但image_key/file_key必须先经 Official API(upload_image/upload_file)上传;send_card_as_user服务端禁了 cookie 通道,始终走 bot。本仓其他能力(读群消息、操作文档 / 表格 / 知识库 / 云空间 / 日历 / 任务 / OKR / 实时事件等)也仍然需要创建飞书自建应用(LARK_APP_ID+LARK_APP_SECRET),跟官方 MCP / CLI 完全一样。
larksuite/lark-openapi-mcp —— 官方 OpenAPI MCP,⚠ Beta + 最后更新 2025-08(9 个月前),README 明文不支持文件上传下载、不支持文档编辑;1271 个 endpoint 工具但 preset.default 仅 ~20,其余"未做兼容性测试"larksuite/cli —— 官方 CLI(9.9k stars,活跃),17 业务域 200+ commands + 24 AI Agent Skills,已支持 `+messages-send --as user`(走 OAuth scope im:message.send_as_user),但 CLI 形态而不是 MCP,Codex / Cursor / Windsurf 等用它要 shell out什么时候用本仓:
什么时候用官方:需要邮件 / 审批 / 考勤 / HR / 招聘 / 会议纪要等业务系统域;或已有飞书应用 + 管理员批了 OAuth scope,偏好官方长期稳定路径。
完整诚实对比见 docs/COMPARISON.md。
你:帮我以我身份给王小明发:今天的代码 review 我看完了,有 3 个 nit
Claude:[调用 send_to_user] Sent
你:总结"工程组"群今天 9 点之后的讨论,发个日报到 #日报频道 Claude:[read_messages → 总结 → send_to_group] Sent
npx feishu-user-plugin setup --app-id <APP_ID> --app-secret <APP_SECRET>
npx feishu-user-plugin oauth # 拿用户 OAuth UAT
cookie 获取(Playwright 自动扫码 / DevTools 手动)、创建飞书应用、各客户端配置详见 docs/AUTH-SETUP.md。
| 鉴权层 | 凭证 | 覆盖能力 | 工具数 |
|---|---|---|---|
| 用户身份(cookie + protobuf) | LARK_COOKIE | 以用户身份发文本 / 图片 / 文件 / 富文本 / @ / 批量 | 8 |
| 官方 API(机器人) | LARK_APP_ID + LARK_APP_SECRET | 群消息读写、文档、多维表格、知识库、云空间、日历、任务 v2、OKR、联系人、实时事件 WS | 70+ |
| 用户 OAuth UAT | LARK_USER_ACCESS_TOKEN + LARK_USER_REFRESH_TOKEN | P2P 私聊读取、用户 chat 列表;写入文档 / Bitable / 日历 资源时以用户为 owner | 2 显式 + 全工具 UAT-first |
三层独立 —— 配置任意一层,对应工具可用。
send_as_usermerge_forward 自动展开 / URL + 飞书文档链接自动提取 / 外部群自动 fallback 到 UATread_doc_markdown 省 ~60% token)/ 多维表格(500 条批量)/ 知识库(含 write CRUD)/ 云空间完整工具列表 + 跨域 caveat + 用法 patterns 见 docs/TOOLS.md。
| Prompt | 说明 |
|---|---|
/send | 以用户身份发消息 |
/reply | 读最近消息然后回 |
/digest | 群 / P2P 最近消息总结 |
/search | 搜联系人 / 群 |
/doc | 搜 / 读 / 建文档 |
/table | 操作多维表格 |
/wiki | 搜知识库 |
/drive | 列云空间 / 建文件夹 |
/status | 检查三层鉴权状态 |
环境变量统一,配置文件位置和顶层键不同:
| 客户端 | 配置文件 | 顶层键 |
|---|---|---|
| Claude Code | ~/.claude.json(推荐全局)/ .mcp.json | mcpServers.feishu-user-plugin |
| Claude Desktop | ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) | mcpServers.feishu |
| Codex | ~/.codex/config.toml | [mcp_servers.feishu-user-plugin] |
| Cursor | .cursor/mcp.json(项目级) | mcpServers.feishu |
| VS Code (Copilot) | .vscode/mcp.json | servers.feishu(注意 servers,非 mcpServers) |
| OpenClaw | ~/.openclaw/openclaw.json | mcp.servers.feishu-user-plugin |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | mcpServers.feishu |
npx feishu-user-plugin setup # Claude Code
npx feishu-user-plugin setup --client codex # Codex npx feishu-user-plugin setup --client both # 都写
各客户端完整 JSON 模板见 README.en.md MCP Client Configuration;详细安装与凭证流程见 docs/AUTH-SETUP.md。
~/.feishu-user-plugin/credentials.json 支持多 profile(默认 + 任意附加),单台机器一处配置覆盖多个飞书账号 / 多个企业。
npx feishu-user-plugin list-profiles
npx feishu-user-plugin switch-profile npx feishu-user-plugin keepalive --all # 跨 profile keepalive
读路径工具失败码 91403 / 1254301 / 1254000 / 99991672 / HTTP 403 时自动跨 profile retry。写路径不自动切(避免错号创建资源)。单调用覆盖:传 via_profile: " " 钉到指定 profile。
详见 docs/TOOLS.md "多 profile auto-switch"。
机器上单进程持有 WS owner 锁,所有 MCP 进程共享 events.jsonl,每条事件全机恰好一次。
mcp call manage_ws_status --action info
mcp call manage_ws_status --action claim --force true
默认订阅 ["im.message.receive_v1"]。要订阅审批 / 日历 / vc 等其他事件,编辑 credentials.json::profiles[ ].events,然后 manage_ws_status(action=reconfig) 不重启重新订阅。
仅支持 feishu.cn —— Lark 国际版(lark.com)的 WSClient 当前不支持。
| 文档 | 角色 |
|---|---|
| docs/TOOLS.md | 工具详细 + 跨域 caveat + 用法 patterns |
| docs/AUTH-SETUP.md | 安装 / 三层鉴权 / Cookie 抓取 / OAuth Scopes |
| docs/TROUBLESHOOTING.md | 错误码与诊断 |
| docs/RELEASING.md | 发版流程 + team-skills 同步 + 公告规则 |
| docs/REFACTOR-NOTES.md | 文件职责矩阵 |
| docs/CREDENTIALS-FORMAT.md | 凭证 schema |
| docs/TESTING-METHODOLOGY.md | 测试方法 |
| CONTRIBUTING.md | 贡献流程(中英双语) |
| ROADMAP.md | 路线图(forward-only) |
| CHANGELOG.md | 历史变更 |
完整 docs/ 索引:docs/README.md。
Issues / PR 欢迎。提交前先看 CONTRIBUTING.md。
飞书改协议导致功能挂掉 —— 开 issue 带错误日志即可。
本地运行的 MCP 服务器,凭证留在用户本机,不上报遥测,不与插件作者后台通信。完整文本见 PRIVACY.md。
LARK_COOKIE / LARK_APP_ID / LARK_APP_SECRET / LARK_USER_ACCESS_TOKEN / LARK_USER_REFRESH_TOKEN 全部由用户主动配置,来源于用户自己的飞书 / Lark 账号~/.feishu-user-plugin/credentials.json(mode 0600);可选事件日志 ~/.feishu-user-plugin/events.jsonl(10 MB / 20 MB 自动轮转)rm -rf ~/.feishu-user-plugin && npm uninstall -g feishu-user-plugin 即清空[security]A locally-run MCP server. Credentials stay on the user's machine; no telemetry, no phone-home. Full text at PRIVACY.md.
LARK_* envs are supplied by the user from their own Feishu / Lark account~/.feishu-user-plugin/credentials.json (mode 0600); optional event log at ~/.feishu-user-plugin/events.jsonlrm -rf ~/.feishu-user-plugin && npm uninstall -g feishu-user-plugin removes everything[security] prefix in the titleMIT