
Lark Mcp
Query Feishu/Lark Bitable rows with filters and send correctly shaped bot messages through MCP-style agent workflows.
Overview
Lark MCP is an agent skill most often used in Build (also Grow support, Operate iterate) that supplies Bitable filter and Lark message JSON patterns for Feishu integrations.
Install
npx skills add https://github.com/whatevertogo/feishuskill --skill lark-mcpWhat is this skill?
- Bitable filter recipes: `and`/`or` conjunctions with `is`, `contains`, `isEmpty`, `isGreater`, `isLess` operators by fie
- Copy-paste YAML/JSON patterns for exact match, text contains, numeric/date thresholds, and multi-condition queries
- Message payloads for plain `text` and rich `post` (zh_cn title, styled segments, links, `@at` mentions)
- Element reference table for `text`, `a`, and `at` tags in Feishu rich posts
- 7 Bitable operator types documented in the operator table
- 4 rich-post element tags (text, a, at) in the element reference
Adoption & trust: 3.1k installs on skills.sh; 36 GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your agent needs to read Lark Bitable or send Feishu messages but you keep looking up filter operators and post JSON structure.
Who is it for?
Indie builders shipping internal tools or bots on Feishu/Lark with agent-assisted queries and notifications.
Skip if: Teams not on Lark/Feishu, or anyone who only needs generic REST patterns without Bitable/post specifics.
When should I use this skill?
Building or extending Feishu/Lark MCP flows that query Bitable with filters or send text/rich chat messages.
What do I get? / Deliverables
You get ready-made filter and message templates aligned with Lark APIs so MCP or agent calls return the right rows and deliver properly formatted chat updates.
- Bitable filter YAML/JSON snippets
- Text and post message JSON payloads
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Lark MCP examples live where you connect external SaaS APIs to your agent—Build → integrations is the canonical shelf for Feishu Bitable and messaging payloads. Filters, operators, and `post` JSON are integration contracts between your skill and Lark’s HTTP APIs, not standalone product validation.
Where it fits
Implement an agent tool that lists Bitable tasks where 状态 is 待处理 and 优先级 is above 3.
Post a styled Feishu update when a customer record moves to 已完成.
Run isEmpty checks on 负责人 before escalating rows missing an owner.
How it compares
Feishu/Lark-specific payload cookbook—not a general MCP server catalog or Slack integration skill.
Common Questions / FAQ
Who is lark-mcp for?
Solo developers and small teams using Feishu/Lark who wire coding agents to Bitable queries and in-app messaging via MCP or similar bridges.
When should I use lark-mcp?
In Build when integrating Lark APIs; in Grow when automating support or lifecycle messages; in Operate when querying ops tables and posting alerts—with the skill’s filter and post examples.
Is lark-mcp safe to install?
It is documentation-style patterns for Lark APIs—review the Security Audits panel on this Prism page and lock down Feishu app credentials and MCP scopes in your own deployment.
SKILL.md
READMESKILL.md - Lark Mcp
# Bitable 查询示例 ## 常用查询 ### 精确匹配 ```yaml data: filter: conjunction: "and" conditions: - field_name: "状态" operator: "is" value: ["已完成"] ``` ### 文本包含 ```yaml data: filter: conditions: - field_name: "任务名称" operator: "contains" value: ["关键词"] ``` ### 数值/日期范围 ```yaml data: filter: conditions: - field_name: "优先级" operator: "isGreater" value: ["3"] ``` ### 空值检查 ```yaml data: filter: conditions: - field_name: "负责人" operator: "isEmpty" value: [] ``` ### 多条件 ```yaml data: filter: conjunction: "and" # 或 "or" conditions: - field_name: "状态" operator: "is" value: ["待处理"] - field_name: "优先级" operator: "isGreater" value: ["3"] ``` ## 操作符 | operator | 适用类型 | |----------|----------| | is | 所有 | | isNot | 除日期外 | | contains | 文本 | | isEmpty | 所有 | | isGreater | 数字、日期 | | isLess | 数字、日期 | # 消息格式示例 ## 文本 ```json {"text": "消息内容"} ``` ## 富文本 ### 基础 ```json { "post": { "zh_cn": { "title": "标题", "content": [[{"tag": "text", "text": "内容"}]] } } } ``` ### 样式 ```json [ {"tag": "text", "text": "普通"}, {"tag": "text", "text": "加粗", "style": ["bold"]}, {"tag": "a", "text": "链接", "href": "https://example.com"}, {"tag": "at", "user_id": "ou_xxxxx"} ] ``` ## 元素 | tag | 示例 | |-----|------| | text | `{"tag": "text", "text": "内容"}` | | a | `{"tag": "a", "text": "链接", "href": "URL"}` | | at | `{"tag": "at", "user_id": "ou_xxx"}` | ## 样式 - `bold` - 加粗 - `italic` - 斜体 - `strikethrough` - 删除线 { "name": "lark-mcp", "version": "1.0.0", "description": "集成飞书/Feishu 服务,操作多维表格、文档、消息、群组等", "author": "whatevertogo", "repository": { "type": "git", "url": "https://github.com/whatevertogo/FeiShuSkill" }, "skills": [ "SKILL.md" ], "mcpServers": { "lark-mcp": { "command": "npx", "args": [ "-y", "@larksuiteoapi/lark-mcp", "mcp", "-a", "<your_app_id>", "-s", "<your_app_secret>", "--oauth" ] } }, "envHints": { "your_app_id": { "description": "飞书应用 ID", "url": "https://open.feishu.cn/app" }, "your_app_secret": { "description": "飞书应用密钥", "url": "https://open.feishu.cn/app", "secret": true } }, "installNotes": [ "安装后请将 <your_app_id> 替换为飞书应用 ID", "安装后请将 <your_app_secret> 替换为飞书应用密钥", "获取凭证请访问:https://open.feishu.cn/app", "详细配置指南:https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/mcp_integration/mcp_installation" ] } # 多维表格 (Bitable) ## 核心规则 ```yaml # 创建资源用用户身份 useUAT: true # 过滤条件 value 必须是数组 ✅ value: ["已完成"] ❌ value: "已完成" # 使用 field_name 而非 field_id field_name: "状态" ``` ## URL 解析 ``` https://xxx.feishu.cn/base/bascnxxxxxx?table=tblxxxxxx ↑app_token ↑table_id ``` ## 工作流 ### 1. 创建 Base ```yaml 工具: mcp__lark-mcp__bitable_v1_app_create data: name: "Base名称" useUAT: true ``` 返回 `app_token` 和 `default_table_id`。 ### 2. 创建数据表 ```yaml 工具: mcp__lark-mcp__bitable_v1_appTable_create path: app_token: "bascnxxxxxx" data: table: name: "表名" fields: - field_name: "文本" ui_type: "Text" - field_name: "单选" ui_type: "SingleSelect" property: options: - name: "选项1" - field_name: "日期" ui_type: "DateTime" useUAT: true ``` ### 3. 查询记录 ```yaml 工具: mcp__lark-mcp__bitable_v1_appTableRecord_search path: app_token: "bascnxxxxxx" table_id: "tblxxxxxx" data: filter: conjunction: "and" conditions: - field_name: "状态" operator: "is" value: ["已完成"] ``` ### 4. 创建记录 ```yaml 工具: mcp__lark-mcp__bitable_v1_appTableRecord_create path: app_token: "bascnxxxxxx" table_id: "tblxxxxxx" data: fields: 文本字段: "值" 单选字段: "选项名" 日期字段: 1705276800000 useUAT: true ``` ### 5. 更新记录 ```yaml 工具: mcp__lark-mcp__bitable_v1_appTableRecord_update path: ap