Skip to content
Content
Skill

/feishu-doc

Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.

BOOST
From plugin
xiaohongshu-mcp-python
14660 skills
Install
$ npx -y skills add luyike221/xiaohongshu-mcp-python --skill feishu-doc --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/feishu-doc

Context preview

The summary Claude sees to decide when to auto-load this skill.

Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.

SKILL.md

feishu-doc.SKILL.md
name: feishu-doc
description: |
  Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.

Feishu Document Tool

Single tool `feishu_doc` with action parameter for all document operations, including table creation for Docx.

Token Extraction

From URL `https://xxx.feishu.cn/docx/ABC123def` → `doc_token` = `ABC123def`

Actions

Read Document

{ "action": "read", "doc_token": "ABC123def" }

Returns: title, plain text content, block statistics. Check `hint` field - if present, structured content (tables, images) exists that requires `list_blocks`.

Write Document (Replace All)

{ "action": "write", "doc_token": "ABC123def", "content": "# Title\n\nMarkdown content..." }

Replaces entire document with markdown content. Supports: headings, lists, code blocks, quotes, links, images (`![](url)` auto-uploaded), bold/italic/strikethrough.

**Limitation:** Markdown tables are NOT supported.

Append Content

{ "action": "append", "doc_token": "ABC123def", "content": "Additional content" }

Appends markdown to end of document.

Create Document

{ "action": "create", "title": "New Document", "owner_open_id": "ou_xxx" }

With folder:

{
  "action": "create",
  "title": "New Document",
  "folder_token": "fldcnXXX",
  "owner_open_id": "ou_xxx"
}

**Important:** Always pass `owner_open_id` with the requesting user's `open_id` (from inbound metadata `sender_id`) so the user automatically gets `full_access` permission on the created document. Without this, only the bot app has access.

List Blocks

{ "action": "list_blocks", "doc_token": "ABC123def" }

Returns full block data including tables, images. Use this to read structured content.

Get Single Block

{ "action": "get_block", "doc_token": "ABC123def", "block_id": "doxcnXXX" }

Update Block Text

{
  "action": "update_block",
  "doc_token": "ABC123def",
  "block_id": "doxcnXXX",
  "content": "New text"
}

Delete Block

{ "action": "delete_block", "doc_token": "ABC123def", "block_id": "doxcnXXX" }

Create Table (Docx Table Block)

{
  "action": "create_table",
  "doc_token": "ABC123def",
  "row_size": 2,
  "column_size": 2,
  "column_width": [200, 200]
}

Optional: `parent_block_id` to insert under a specific block.

Write Table Cells

{
  "action": "write_table_cells",
  "doc_token": "ABC123def",
  "table_block_id": "doxcnTABLE",
  "values": [
    ["A1", "B1"],
    ["A2", "B2"]
  ]
}

Create Table With Values (One-step)

{
  "action": "create_table_with_values",
  "doc_token": "ABC123def",
  "row_size": 2,
  "column_size": 2,
  "column_width": [200, 200],
  "values": [
    ["A1", "B1"],
    ["A2", "B2"]
  ]
}

Optional: `parent_block_id` to insert under a specific block.

Upload Image to Docx (from URL or local file)

{
  "action": "upload_image",
  "doc_token": "ABC123def",
  "url": "https://example.com/image.png"
}

Or local path with position control:

{
  "action": "upload_image",
  "doc_token": "ABC123def",
  "file_path": "/tmp/image.png",
  "parent_block_id": "doxcnParent",
  "index": 5
}

Optional `index` (0-based) inserts the image at a specific position among sibling blocks. Omit to append at end.

**Note:** Image display size is determined by the uploaded image's pixel dimensions. For small images (e.g. 480x270 GIFs), scale to 800px+ width before uploading to ensure proper display.

Upload File Attachment to Docx (from URL or local file)

{
  "action": "upload_file",
  "doc_token": "ABC123def",
  "url": "https://example.com/report.pdf"
}

Or local path:

{
  "action": "upload_file",
  "doc_token": "ABC123def",
  "file_path": "/tmp/report.pdf",
  "filename": "Q1-report.pdf"
}

Rules:

  • exactly one of `url` / `file_path`
  • optional `filename` override
  • optional `parent_block_id`

Reading Workflow

1. Start with `action: "read"` - get plain text + statistics 2. Check `block_types` in response for Table, Image, Code, etc. 3. If structured content exists, use `action: "list_blocks"` for full data

Configuration

channels:
  feishu:
    tools:
      doc: true # default: true

**Note:** `feishu_wiki` depends on this tool - wiki page content is read/written via `feishu_doc`.

Permissions

Required: `docx:document`, `docx:document:readonly`, `docx:document.block:convert`, `drive:drive`

Read more
Ships withxiaohongshu-mcp-python

xiaohongshu-mcp-python 是一个基于现代 Python 技术栈开发的小红书内容自动化发布工具,通过 Model Context Protocol(MCP)协议为 AI 客户端提供强大的小红书操作能力。项目核心功能包括小红书账户登录管理、图文内容发布、视频内容发布、内容搜索与获取、帖子详情查看以及评论互动等。支持多种图片格式(JPG、PNG、GIF)和视频格式(MP4、MOV、AVI),既可处理本地文件路径,也支持 HTTP/HTTPS 链接,为用户提供灵活的内容发布方案。 该工具特别适合内容创作者、营销人员和开发者使用,能够显著提升小红书内容发布的效率和自动化程度。通过标准化的 MCP 接口,用户可以轻松地将小红书操作能力集成到各种 AI 工作流中,实现智能化的内容管理

Get the whole plugin

Other skills on xiaohongshu-mcp-python.