name: feishu-create-doc description: | 建立飛書雲文件。從 Lark-flavored Markdown 內容建立新的飛書雲文件,支援指定建立位置(資料夾/知識庫/知識空間)。
通過 MCP 呼叫 create-doc,從 Lark-flavored Markdown 內容建立一個新的飛書雲文件。
工具成功執行後,返回一個 JSON 物件,包含以下欄位:
doc_id(string):文件的唯一識別符號(token),格式如 doxcnXXXXXXXXXXXXXXXXXXXdoc_url(string):文件的訪問連結,可直接在瀏覽器中開啟,格式如 https://www.feishu.cn/docx/doxcnXXXXXXXXXXXXXXXXXXXmessage(string):操作結果訊息,如"文件建立成功"文件的 Markdown 內容,使用 Lark-flavored Markdown 格式。
呼叫本工具的markdown內容應當儘量結構清晰,樣式豐富, 有很高的可讀性. 合理的使用callout高亮塊, 分欄,表格等能力,併合理的運用插入圖片與mermaid的能力,做到圖文並茂.. 你需要遵循以下原則:
當用戶有明確的樣式,風格需求時,應當以使用者的需求為準!!
重要提示: - 禁止重複標題:markdown 內容開頭不要寫與 title 相同的一級標題!title 引數已經是文件標題,markdown 應直接從正文內容開始 - 目錄:飛書自動生成,無需手動新增 - Markdown 語法必須符合 Lark-flavored Markdown 規範,詳見下方"內容格式"章節 - 建立較長的文件時,強烈建議配合update-doc中的append mode, 進行分段的建立,提高成功率.
文件標題。
父資料夾的 token。如果不提供,文件將建立在使用者的個人空間根目錄。
folder_token 可以從飛書資料夾 URL 中獲取,格式如:https://xxx.feishu.cn/drive/folder/fldcnXXXX,其中 fldcnXXXX 即為 folder_token。
知識庫節點 token 或 URL(可選,傳入則在該節點下建立文件,與 folder_token 和 wiki_space 互斥)
wiki_node 可以從飛書知識庫頁面 URL 中獲取,格式如:https://xxx.feishu.cn/wiki/wikcnXXXX,其中 wikcnXXXX 即為 wiki_node token。
知識空間 ID(可選,傳入則在該空間根目錄下建立文件。特殊值 my_library 表示使用者的個人知識庫。與 wiki_node 和 folder_token 互斥)
wiki_space 可以從知識空間設定頁面 URL 中獲取,格式如:https://xxx.feishu.cn/wiki/settings/7448000000000009300,其中 7448000000000009300 即為 wiki_space ID。
引數優先順序:wiki_node > wiki_space > folder_token
{
"title": "專案計劃",
"markdown": "# 專案概述\n\n這是一個新專案。\n\n## 目標\n\n- 目標 1\n- 目標 2"
}
{
"title": "會議紀要",
"folder_token": "fldcnXXXXXXXXXXXXXXXXXXXXXX",
"markdown": "# 週會 2025-01-15\n\n## 討論議題\n\n1. 專案進度\n2. 下週計劃"
}
使用高亮塊、表格等飛書特有功能:
{
"title": "產品需求",
"markdown": "<callout emoji=\"💡\" background-color=\"light-blue\">\n重要需求說明\n</callout>\n\n## 功能列表\n\n<lark-table header-row=\"true\">\n| 功能 | 優先順序 |\n|------|--------|\n| 登入 | P0 |\n| 匯出 | P1 |\n</lark-table>"
}
{
"title": "技術文件",
"wiki_node": "wikcnXXXXXXXXXXXXXXXXXXXXXX",
"markdown": "# API 介面說明\n\n這是一個知識庫文件。"
}
{
"title": "專案概覽",
"wiki_space": "7448000000000009300",
"markdown": "# 專案概覽\n\n這是知識空間根目錄下的一級文件。"
}
{
"title": "學習筆記",
"wiki_space": "my_library",
"markdown": "# 學習筆記\n\n這是建立在個人知識庫中的文件。"
}
文件內容使用 Lark-flavored Markdown 格式,這是標準 Markdown 的擴充套件版本,支援飛書文件的所有塊型別和富文本格式。
* ~ $ [ ] < > { } | ^`普通文本段落
段落中的**粗體文字**
多個段落之間用空行分隔。
居中文本 {align="center"}
右對齊文本 {align="right"}
段落對齊:支援 {align="left|center|right"} 語法。可與顏色組合:{color="blue" align="center"}
飛書支援 9 級標題。H1-H6 使用標準 Markdown 語法,H7-H9 使用 HTML 標籤:
# 一級標題
## 二級標題
### 三級標題
#### 四級標題
##### 五級標題
###### 六級標題
<h7>七級標題</h7>
<h8>八級標題</h8>
<h9>九級標題</h9>
# 帶顏色的標題 {color="blue"}
## 紅色標題 {color="red"}
# 居中標題 {align="center"}
## 藍色居中標題 {color="blue" align="center"}
標題屬性:支援 {color="顏色名"} 和 {align="left|center|right"} 語法,可組合使用。顏色值:red, orange, yellow, green, blue, purple, gray。請謹慎使用該能力.
有序列表,無序列表巢狀使用tab或者 2 空格縮排
- 無序項1(
- 無序項1.a
- 無序項1.b
1. 有序項1
2. 有序項2
- [ ] 待辦
- [x] 已完成
> 這是一段引用
> 可以跨多行
> 引用中支援**加粗**和*斜體*等格式
⚠️ 只支援圍欄程式碼塊(```),不支援縮排程式碼塊。
```python
print("Hello")
```
支援語言:python, javascript, go, java, sql, json, yaml, shell 等。
---
**粗體** *斜體* ~~刪除線~~ `行內程式碼` <u>下劃線</u>
<text color="red">紅色</text> <text background-color="yellow">黃色背景</text>
支援: red, orange, yellow, green, blue, purple, gray
[連結文字](https://example.com) (不支援錨點連結)
$E = mc^2$($前後需空格)或 <equation>E = mc^2</equation>(無限制,推薦)
<callout emoji="✅" background-color="light-green" border-color="green">
支援**格式化**的內容,可包含多個塊
</callout>
屬性: emoji (使用emoji 字元如 ✅ ⚠️ 💡), background-color, border-color, text-color
背景色: light-red/red, light-blue/blue, light-green/green, light-yellow/yellow, light-orange/orange, light-purple/purple, pale-gray/light-gray/dark-gray
常用: 💡light-blue(提示) ⚠️light-yellow(警告) ❌light-red(危險) ✅light-green(成功)
限制: callout子塊僅支援文本、標題、列表、待辦、引用。不支援程式碼塊、表格、圖片。
適合對比、並列展示場景。支援 2-5 列:
<grid cols="2">
<column>
左欄內容
</column>
<column>
右欄內容
</column>
</grid>
<grid cols="3">
<column width="20">左欄(20%)</column>
<column width="60">中欄(60%)</column>
<column width="20">右欄(20%)</column>
</grid>
屬性: cols(列數 2-5), width(列寬百分比,總和為100,等寬時可省略)
| 列 1 | 列 2 | 列 3 |
|------|------|------|
| 單元格 1 | 單元格 2 | 單元格 3 |
| 單元格 4 | 單元格 5 | 單元格 6 |
當單元格需要複雜內容(列表、程式碼塊、高亮塊等)時使用。
層級結構(必須嚴格遵守):
<lark-table> ← 表格容器
<lark-tr> ← 行(直接子元素只能是 lark-tr)
<lark-td>內容</lark-td> ← 單元格(直接子元素只能是 lark-td)
<lark-td>內容</lark-td> ← 每行的 lark-td 數量必須相同!
</lark-tr>
</lark-table>
屬性:
- column-widths:列寬,逗號分隔畫素值,總寬≈730
- header-row:首行是否為表頭("true" 或 "false")
- header-column:首列是否為表頭("true" 或 "false")
單元格寫法:內容前後必須空行
<lark-td>
這裡寫內容
</lark-td>
完整示例(2行3列):
<lark-table column-widths="200,250,280" header-row="true">
<lark-tr>
<lark-td>
**表頭1**
</lark-td>
<lark-td>
**表頭2**
</lark-td>
<lark-td>
**表頭3**
</lark-td>
</lark-tr>
<lark-tr>
<lark-td>
普通文本
</lark-td>
<lark-td>
- 列表項1
- 列表項2
</lark-td>
<lark-td>
程式碼內容
</lark-td>
</lark-tr>
</lark-table>
限制:單元格內不支援 Grid 和巢狀表格
合併單元格:讀取時返回 rowspan/colspan 屬性,建立暫不支援
禁止:
- 混用 Markdown 表格語法(|---|)
- 使用 <br/> 換行
- 遺漏 <lark-td> 標籤
<image url="https://example.com/image.png" width="800" height="600" align="center" caption="圖片描述文字"/>
屬性: url (必需,系統會自動下載並上傳), width, height, align (left/center/right), caption
⚠️ 重要: 不支援直接使用 token 屬性(如 <image token="xxx"/>),只支援 URL 方式。系統會自動下載圖片並上傳到飛書。
支援 PNG/JPG/GIF/WebP/BMP,最大 10MB
圖片/檔案插入方式選擇:
- 有公開可訪問的圖片 URL → 直接在 create-doc / update-doc 的 markdown 中使用 <image url="..."/> 一步到位
feishu_doc_media 工具將本地圖片或檔案追加到文件末尾。如需媒體出現在文件中間特定位置,可先用 create-doc 寫好之前的內容,呼叫 feishu_doc_media 追加圖片/檔案,最後用 update-doc 的 append 模式追加後續內容<file url="https://example.com/document.pdf" name="文件.pdf" view-type="1"/>
屬性: - url (檔案 URL,必需,系統會自動下載並上傳) - name (檔名,必需) - view-type (1=卡片檢視, 2=預覽檢視,可選)
⚠️ 重要: 不支援直接使用 token 屬性(如 <file token="xxx"/>)
支援兩種圖表語法:Mermaid 和 PlantUML。
圖表優先選擇此格式. mermaid圖表會被渲染為視覺化的畫板, 如果能用mermaid實現的圖表,應當優先選擇mermaid.
```mermaid
graph TD
A[開始] --> B{判斷}
B -->|是| C[處理]
B -->|否| D[結束]
```
支援圖表型別: flowchart, sequenceDiagram, classDiagram, stateDiagram, gantt, mindmap, erDiagram
PlantUML圖表會被渲染為視覺化的畫板. mermaid滿足不了的場景可以選擇plantUML進行繪圖.
```plantuml
@startuml
Alice -> Bob: Hello
Bob --> Alice: Hi!
@enduml
```
支援圖表型別: sequence, usecase, class, activity, component, state, object, deployment
讀取時返回 <whiteboard> 標籤:
<whiteboard token="xxx" align="center" width="800" height="600"/>
屬性: token (畫板標識), align (left/center/right), width, height
重要說明:
- create-doc時用 Mermaid/PlantUML 程式碼塊,系統自動轉換為畫板; 禁止以<whiteboard>的方式寫入!!
- 讀取時只能獲取 token,可通過fetch-file工具進行檢視內容。無法獲取原始原始碼
<bitable view="table"/>
<bitable view="kanban"/>
屬性: view (table/kanban,預設 table)
注意: token 是隻讀屬性,建立時不能指定只能建立空的多維表格,建立後再手動新增資料。
<chat-card id="oc_xxx" align="center"/>
屬性: id (格式 oc_xxx, 必需), align (left/center/right)
<iframe url="https://example.com/survey?id=123" type="12"/>
屬性: url (必需), type (元件型別數字, 必需)
type 列舉: 1=Bilibili, 2=西瓜, 3=優酷, 4=Airtable, 5=百度地圖, 6=高德地圖, 8=Figma, 9=墨刀, 10=Canva, 11=CodePen, 12=飛書問卷, 13=金資料
重要提示: 僅支援上述列出的網頁型別。其他型別的網頁不支援嵌入,請不要使用 iframe。對於普通網頁連結,請使用 Markdown 連結格式 [連結文字](URL) 代替。
<link-preview url="訊息連結" type="message"/>
屬性: url (必需, 只寫屬性), type (message=訊息連結)
目前僅支援訊息連結, 只支援讀取, 不支援建立
<quote-container>
引用容器內容
</quote-container>
與 quote 引用塊不同,引用容器是容器型別,可包含多個子塊
<sheet rows="5" cols="5"/>
<sheet/>
屬性: rows (行數,預設 3,最大 9), cols (列數,預設 3)
注意: token 是隻讀屬性,建立時不能指定。只能建立空的電子表格,建立後使用 Sheet API 運算元據。
以下塊型別僅支援讀取,不支援建立:
| 塊型別 | 標籤 | 說明 |
|---|---|---|
| 思維筆記 | <mindnote token="xxx"/> |
僅獲取佔位資訊 |
| 流程圖/UML | <diagram type="1"/> |
type: 1=流程圖, 2=UML |
| AI 模板 | <ai-template/> |
無內容佔位塊 |
<task task-id="xxx" members="ou_123, ou_456" due="2025-01-01">任務標題</task>
屬性: task-id, members (成員ID列表), due (截止日期)
<!-- 源同步塊:內容在子塊中 -->
<source-synced align="1">子塊內容...</source-synced>
<!-- 引用同步塊:自動獲取源文件內容 -->
<reference-synced source-block-id="xxx" source-document-id="yyy">源內容...</reference-synced>
屬性: source-synced 有 align;reference-synced 有 source-block-id, source-document-id
<add-ons component-type-id="blk_xxx" record='{"key":"value"}'/>
屬性: component-type-id (小元件型別ID), record (JSON資料)
包含多種型別:問答互動、日期提醒等。部分元件如 Mermaid 已專門封裝為 board 塊
<isv id="comp_xxx" type="type_xxx"/>
屬性: component_id, component_type_id
舊版開放平臺小元件,新版請使用 AddOns
<wiki-catalog token="wiki_xxx"/>
屬性: wiki_token (知識庫節點token)
🕰️ 舊版,建議使用新版 sub-page-list
<sub-page-list wiki="wiki_xxx"/>
屬性: wiki_token (當前頁面的wiki token)
僅支援知識庫文件建立,需傳入當前頁面的 wiki token
訪問小蔥技能站7w4.net,解鎖更多實用的AI技能外掛。
<agenda>
<agenda-item>
<agenda-title>議程標題</agenda-title>
<agenda-content>議程內容</agenda-content>
</agenda-item>
</agenda>
結構: agenda (容器) → agenda_item (議程項) → agenda_title (標題) + agenda_content (內容)
<jira-issue id="xxx" key="PROJECT-123"/>
屬性: id (Jira問題ID), key (Jira問題Key)
<okr id="okr_xxx">
<objective id="obj_1">
<kr id="kr_1"/>
</objective>
</okr>
⚠️ 僅支援 user_access_token 建立,需使用 OKR API 進行詳細操作
結構: okr → okr_objective (目標) → okr_key_result (關鍵結果) + okr_progress (進展)
<mention-user id="ou_xxx"/>
屬性: id (使用者 open_id,格式 ou_xxx)
注意不要直接在文件中寫@張三 這類格式,應當使用search-user獲取使用者的id,並使用mention-user.
<mention-doc token="doxcnXXX" type="docx">文件標題</mention-doc>
屬性: token (文件 token), type (docx/sheet/bitable)
<reminder date="2025-12-31T18:00+08:00" notify="true" user-id="ou_xxx"/>
屬性:
- date (必需): YYYY-MM-DDTHH:mm+HH:MM, ISO 8601 帶時區偏移
- notify (true/false): 是否傳送通知
- user-id (必需): 建立者使用者 ID
$$
\int_{0}^{\infty} e^{-x^2} dx = \frac{\sqrt{\pi}}{2}
$$
愛因斯坦方程:$E = mc^2$(注意 $ 前後需空格,緊鄰位置不能有空格)
| 場景 | 推薦元件 | 說明 |
|---|---|---|
| 重點提示/警告 | Callout | 藍色提示、黃色警告、紅色危險 |
| 對比/並列展示 | Grid 分欄 | 2-3 列最佳,配合 Callout 更醒目 |
| 資料彙總 | 表格 | 簡單用 Markdown,複雜巢狀用 lark-table |
| 步驟說明 | 有序列表 | 可巢狀子步驟 |
| 時間線/版本 | 有序列表 + 加粗日期 | 或用 Mermaid timeline |
| 程式碼展示 | 程式碼塊 | 標註語言,適當添加註釋 |
| 知識卡片 | Callout + emoji | 用於概念解釋、小貼士 |
| 引用說明 | 引用塊 > | 引用原文、名言 |
| 術語對照 | 兩列表格 | 中英文、縮寫全稱等 |
\ 轉義:\* \~ ```<lark-table><mention-user>,@文件用 <mention-doc>這是一個用於建立飛書文件的技能,內容組織清晰、示例豐富、格式說明詳盡,基本涵蓋了飛書文件支援的各類元素。不過文件整體較長,部分內容有重複,更像技術參考手冊而非快速入門指南,適合有明確需求時深入查閱,對新手使用者不太友好。