[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-450910e1-d610-4329-bc12-471d8d2be405":3,"$flcUeIEht_5Dsph3pT4rd96jTI2oR_JdCPdEczAiGmho":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"450910e1-d610-4329-bc12-471d8d2be405","notion-automation","通过Rube MCP（Composio）自动化Notion任务：页面、数据库、块、评论、用户。始终首先搜索当前架构的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: notion-automation\ndescription: \"Automate Notion tasks via Rube MCP (Composio): pages, databases, blocks, comments, users. Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Notion Automation via Rube MCP\n\nAutomate Notion operations through Composio's Notion toolkit via Rube MCP.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Notion connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `notion`\n3. If connection is not ACTIVE, follow the returned auth link to complete Notion OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Create and Manage Pages\n\n**When to use**: User wants to create, update, or archive Notion pages\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find parent page or existing page [Prerequisite]\n2. `NOTION_CREATE_NOTION_PAGE` - Create a new page under a parent [Optional]\n3. `NOTION_RETRIEVE_PAGE` - Get page metadata\u002Fproperties [Optional]\n4. `NOTION_UPDATE_PAGE` - Update page properties, title, icon, cover [Optional]\n5. `NOTION_ARCHIVE_NOTION_PAGE` - Soft-delete (archive) a page [Optional]\n\n**Key parameters**:\n- `query`: Search text for SEARCH_NOTION_PAGE\n- `parent_id`: Parent page or database ID\n- `page_id`: Page ID for retrieval\u002Fupdate\u002Farchive\n- `properties`: Page property values matching parent schema\n\n**Pitfalls**:\n- RETRIEVE_PAGE returns only metadata\u002Fproperties, NOT body content; use FETCH_BLOCK_CONTENTS for page body\n- ARCHIVE_NOTION_PAGE is a soft-delete (sets archived=true), not permanent deletion\n- Broad searches can look incomplete unless has_more\u002Fnext_cursor is fully paginated\n\n### 2. Query and Manage Databases\n\n**When to use**: User wants to query database rows, insert entries, or update records\n\n**Tool sequence**:\n1. `NOTION_SEARCH_NOTION_PAGE` - Find the database by name [Prerequisite]\n2. `NOTION_FETCH_DATABASE` - Inspect schema and properties [Prerequisite]\n3. `NOTION_QUERY_DATABASE` \u002F `NOTION_QUERY_DATABASE_WITH_FILTER` - Query rows [Required]\n4. `NOTION_INSERT_ROW_DATABASE` - Add new entries [Optional]\n5. `NOTION_UPDATE_ROW_DATABASE` - Update existing entries [Optional]\n\n**Key parameters**:\n- `database_id`: Database ID (from search or URL)\n- `filter`: Filter object matching Notion filter syntax\n- `sorts`: Array of sort objects\n- `start_cursor`: Pagination cursor from previous response\n- `properties`: Property values matching database schema for inserts\u002Fupdates\n\n**Pitfalls**:\n- 404 object_not_found usually means wrong database_id or the database is not shared with the integration\n- Results are paginated; ignoring has_more\u002Fnext_cursor silently truncates reads\n- Schema mismatches or missing required properties cause 400 validation_error\n- Formula and read-only fields cannot be set via INSERT_ROW_DATABASE\n- Property names in filters must match schema exactly (case-sensitive)\n\n### 3. Manage Blocks and Page Content\n\n**When to use**: User wants to read, append, or modify content blocks in a page\n\n**Tool sequence**:\n1. `NOTION_FETCH_BLOCK_CONTENTS` - Read child blocks of a page [Required]\n2. `NOTION_ADD_MULTIPLE_PAGE_CONTENT` - Append blocks to a page [Optional]\n3. `NOTION_APPEND_TEXT_BLOCKS` - Append text-only blocks [Optional]\n4. `NOTION_REPLACE_PAGE_CONTENT` - Replace all page content [Optional]\n5. `NOTION_DELETE_BLOCK` - Remove a specific block [Optional]\n\n**Key parameters**:\n- `block_id` \u002F `page_id`: Target page or block ID\n- `content_blocks`: Array of block objects (NOT child_blocks)\n- `text`: Plain text content for APPEND_TEXT_BLOCKS\n\n**Pitfalls**:\n- Use `content_blocks` parameter, NOT `child_blocks` -- the latter fails validation\n- ADD_MULTIPLE_PAGE_CONTENT fails on archived pages; unarchive via UPDATE_PAGE first\n- Created blocks are in response.data.results; persist block IDs for later edits\n- DELETE_BLOCK is archival (archived=true), not permanent deletion\n\n### 4. Manage Database Schema\n\n**When to use**: User wants to create databases or modify their structure\n\n**Tool sequence**:\n1. `NOTION_FETCH_DATABASE` - Inspect current schema [Prerequisite]\n2. `NOTION_CREATE_DATABASE` - Create a new database [Optional]\n3. `NOTION_UPDATE_SCHEMA_DATABASE` - Modify database properties [Optional]\n\n**Key parameters**:\n- `parent_id`: Parent page ID for new databases\n- `title`: Database title\n- `properties`: Property definitions with types and options\n- `database_id`: Database ID for schema updates\n\n**Pitfalls**:\n- Cannot change property types via UPDATE_SCHEMA; must create new property and migrate data\n- Formula, rollup, and relation properties have complex configuration requirements\n\n### 5. Manage Users and Comments\n\n**When to use**: User wants to list workspace users or manage comments on pages\n\n**Tool sequence**:\n1. `NOTION_LIST_USERS` - List all workspace users [Optional]\n2. `NOTION_GET_ABOUT_ME` - Get current authenticated user [Optional]\n3. `NOTION_CREATE_COMMENT` - Add a comment to a page [Optional]\n4. `NOTION_FETCH_COMMENTS` - List comments on a page [Optional]\n\n**Key parameters**:\n- `page_id`: Page ID for comments (also called `discussion_id`)\n- `rich_text`: Comment content as rich text array\n\n**Pitfalls**:\n- Comments are linked to pages, not individual blocks\n- User IDs from LIST_USERS are needed for people-type property filters\n\n## Common Patterns\n\n### ID Resolution\n\n**Page\u002FDatabase name -> ID**:\n```\n1. Call NOTION_SEARCH_NOTION_PAGE with query=name\n2. Paginate with has_more\u002Fnext_cursor until found\n3. Extract id from matching result\n```\n\n**Database schema inspection**:\n```\n1. Call NOTION_FETCH_DATABASE with database_id\n2. Extract properties object for field names and types\n3. Use exact property names in queries and inserts\n```\n\n### Pagination\n\n- Set `page_size` for results per page (max 100)\n- Check response for `has_more` boolean\n- Pass `start_cursor` or `next_cursor` in next request\n- Continue until `has_more` is false\n\n### Notion Filter Syntax\n\n**Single filter**:\n```json\n{\"property\": \"Status\", \"select\": {\"equals\": \"Done\"}}\n```\n\n**Compound filter**:\n```json\n{\"and\": [\n  {\"property\": \"Status\", \"select\": {\"equals\": \"In Progress\"}},\n  {\"property\": \"Assignee\", \"people\": {\"contains\": \"user-id\"}}\n]}\n```\n\n## Known Pitfalls\n\n**Integration Sharing**:\n- Pages and databases must be shared with the Notion integration to be accessible\n- Title queries can return 0 when the item is not shared with the integration\n\n**Property Types**:\n- Property names are case-sensitive and must match schema exactly\n- Formula, rollup, and created_time fields are read-only\n- Select\u002Fmulti-select values must match existing options unless creating new ones\n\n**Response Parsing**:\n- Response data may be nested under `data_preview` or `data.results`\n- Parse defensively with fallbacks for different nesting levels\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Search pages\u002Fdatabases | NOTION_SEARCH_NOTION_PAGE | query |\n| Create page | NOTION_CREATE_NOTION_PAGE | parent_id, properties |\n| Get page metadata | NOTION_RETRIEVE_PAGE | page_id |\n| Update page | NOTION_UPDATE_PAGE | page_id, properties |\n| Archive page | NOTION_ARCHIVE_NOTION_PAGE | page_id |\n| Duplicate page | NOTION_DUPLICATE_PAGE | page_id |\n| Get page blocks | NOTION_FETCH_BLOCK_CONTENTS | block_id |\n| Append blocks | NOTION_ADD_MULTIPLE_PAGE_CONTENT | page_id, content_blocks |\n| Append text | NOTION_APPEND_TEXT_BLOCKS | page_id, text |\n| Replace content | NOTION_REPLACE_PAGE_CONTENT | page_id, content_blocks |\n| Delete block | NOTION_DELETE_BLOCK | block_id |\n| Query database | NOTION_QUERY_DATABASE | database_id, filter, sorts |\n| Query with filter | NOTION_QUERY_DATABASE_WITH_FILTER | database_id, filter |\n| Insert row | NOTION_INSERT_ROW_DATABASE | database_id, properties |\n| Update row | NOTION_UPDATE_ROW_DATABASE | page_id, properties |\n| Get database schema | NOTION_FETCH_DATABASE | database_id |\n| Create database | NOTION_CREATE_DATABASE | parent_id, title, properties |\n| Update schema | NOTION_UPDATE_SCHEMA_DATABASE | database_id, properties |\n| List users | NOTION_LIST_USERS | (none) |\n| Create comment | NOTION_CREATE_COMMENT | page_id, rich_text |\n| List comments | NOTION_FETCH_COMMENTS | page_id |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,182,1101,"2026-05-16 13:31:11",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"9486b79c-54cb-4644-8d69-57b3c0860cb8","1.0.0","notion-automation.zip",3415,"uploads\u002Fskills\u002F450910e1-d610-4329-bc12-471d8d2be405\u002Fnotion-automation.zip","5a5e930c55ce1def921224561a5c5557ab4f3901b48abf8f8424f93b5973687b","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":9014}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]