Install
Terminal · npx$
npx skills add https://github.com/inferen-sh/skills --skill twitter-automationWorks with Paperclip
How Notion Automation fits into a Paperclip company.
Notion Automation drops into any Paperclip agent that handles - notion work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.
S
SaaS FactoryPaired
Pre-configured AI company — 18 agents, 18 skills, one-time purchase.
$27$59
Explore packSource file
SKILL.md495 linesExpandCollapse
---name: notion-automationdescription: "Notion database automation - sync, templates, workflows, and cross-platform integrations"version: "1.0.0"author: claude-office-skillslicense: MIT category: productivitytags: - notion - automation - database - workflow - n8ndepartment: Operations models: recommended: - claude-sonnet-4 mcp: server: notion-mcp tools: - notion_create_page - notion_update_database - notion_query capabilities: - database_automation - template_creation - cross_platform_sync - workflow_triggers - content_management languages: - en - zh related_skills: - sheets-automation - slack-workflows - crm-automation--- # Notion Automation Automate Notion databases and workflows with cross-platform integrations, templates, and intelligent triggers. Based on n8n's Notion workflow templates. ## Overview This skill covers:- Database automation and triggers- Template and page creation- Cross-platform sync (Slack, Calendar, CRM)- Content management workflows- Team collaboration automation --- ## Core Workflows ### 1. Form → Notion Database ```yamlworkflow: "Form to Notion"trigger: typeform_submission OR google_form steps: 1. capture_data: fields: [name, email, company, message, source] 2. enrich_data: clearbit: lookup_by_email append: [company_size, industry] 3. create_notion_page: database_id: "leads_database" properties: Name: "{name}" Email: "{email}" Company: "{company}" Status: "New" Source: "{source}" Created: "{timestamp}" content: - heading: "Contact Details" - text: "{message}" - divider - heading: "Enriched Data" - text: "Industry: {industry}, Size: {company_size}" 4. notify: slack: channel: "#new-leads" message: "New lead: {name} from {company}"``` ### 2. Notion → Email Digest ```yamlworkflow: "Weekly Notion Digest"schedule: "Monday 9am" steps: 1. query_notion: database: "Tasks" filter: - property: "Due Date" date: this_week - property: "Status" not_equals: "Done" 2. group_by_assignee: method: aggregate 3. generate_digest: for_each: assignee template: | Hi {assignee}, Here are your tasks for this week: {for task in tasks} • {task.title} - Due: {task.due_date} {endfor} Total: {task_count} tasks 4. send_emails: to: each_assignee subject: "Your Weekly Task Digest"``` ### 3. Slack → Notion Task ```yamlworkflow: "Slack to Notion Task"trigger: slack_reaction (✅ emoji) steps: 1. capture_message: extract: [text, author, channel, timestamp, thread] 2. parse_task: ai_extraction: title: extract_action_item due_date: extract_date_if_mentioned priority: infer_from_context 3. create_notion_task: database: "Tasks" properties: Title: "{extracted_title}" Status: "To Do" Source: "Slack - #{channel}" Assignee: "{slack_user_to_notion_user}" Due Date: "{due_date}" Priority: "{priority}" content: - quote: "{original_message}" - text: "Created from Slack message" - link: "{slack_permalink}" 4. thread_reply: slack: thread_ts: "{timestamp}" message: "✅ Task created in Notion: {notion_url}"``` ### 4. Calendar Sync ```yamlworkflow: "Google Calendar ↔ Notion"trigger: bidirectional google_to_notion: trigger: calendar_event_created action: - create_notion_page: database: "Meetings" properties: Title: "{event.title}" Date: "{event.start}" Attendees: "{event.attendees}" Location: "{event.location}" Calendar Link: "{event.link}" notion_to_google: trigger: notion_page_created filter: database == "Meetings" action: - create_calendar_event: title: "{page.Title}" start: "{page.Date}" description: "{page.Notes}" attendees: "{page.Attendees}"``` ### 5. Content Pipeline ```yamlworkflow: "Content Publishing Pipeline" database_structure: properties: - Title: title - Status: select [Idea, Writing, Review, Published] - Author: person - Due Date: date - Platform: multi_select [Blog, LinkedIn, Twitter] - Content: rich_text automations: status_changed_to_review: - notify_slack: "#content-review" - assign_reviewer: round_robin - set_due_date: 3_days_from_now status_changed_to_published: - post_to_platforms: based_on_Platform_property - update_analytics_tracker: add_row - archive_after: 7_days``` --- ## Database Templates ### Project Management ```yamlproject_database: name: "Projects" properties: - Name: title - Status: select options: [Planning, In Progress, Review, Complete] - Priority: select options: [P0, P1, P2, P3] - Owner: person - Team: multi_select - Start Date: date - Due Date: date - Progress: number (percent) - Related Tasks: relation → Tasks views: - Board: group_by Status - Timeline: gantt chart - Calendar: by Due Date - Table: all properties automations: - when: all_tasks_complete then: set_status "Complete" - when: due_date_approaching (3 days) then: slack_reminder to Owner``` ### CRM Database ```yamlcrm_database: name: "Contacts" properties: - Name: title - Email: email - Company: text - Stage: select options: [Lead, Qualified, Proposal, Negotiation, Closed] - Value: number (currency) - Last Contact: date - Next Action: text - Owner: person - Related Deals: relation → Deals automations: - when: stage_changed then: log_activity + notify_owner - when: no_contact_14_days then: slack_alert "Follow up needed"``` ### Content Calendar ```yamlcontent_calendar: name: "Content" properties: - Title: title - Type: select [Blog, Video, Social, Newsletter] - Status: select [Idea, Draft, Review, Scheduled, Published] - Publish Date: date - Author: person - Platform: multi_select - SEO Keywords: multi_select - Engagement: number views: - Calendar: by Publish Date - Kanban: by Status - By Platform: grouped table``` --- ## API Patterns ### Query Database ```javascript// n8n Notion Query{ "database_id": "abc123", "filter": { "and": [ { "property": "Status", "select": { "equals": "In Progress" } }, { "property": "Due Date", "date": { "on_or_before": "{{$today}}" } } ] }, "sorts": [ { "property": "Priority", "direction": "ascending" } ]}``` ### Create Page ```javascript// n8n Notion Create Page{ "parent": { "database_id": "abc123" }, "properties": { "Name": { "title": [{ "text": { "content": "{{$json.title}}" }}] }, "Status": { "select": { "name": "New" } }, "Tags": { "multi_select": [ { "name": "{{$json.tag1}}" }, { "name": "{{$json.tag2}}" } ] } }, "children": [ { "object": "block", "type": "heading_2", "heading_2": { "rich_text": [{ "text": { "content": "Overview" }}] } }, { "object": "block", "type": "paragraph", "paragraph": { "rich_text": [{ "text": { "content": "{{$json.content}}" }}] } } ]}``` --- ## Integration Recipes ### Notion + Slack + Calendar ```yamlmeeting_workflow: trigger: notion_page_created database: "Meetings" actions: 1. create_calendar_event: google_calendar: title: "{Title}" date: "{Date}" 2. create_slack_channel: if: "{Type}" == "Project Kickoff" name: "proj-{project_name}" 3. send_invites: to: "{Attendees}" include: [calendar_link, notion_link, slack_channel] 4. create_meeting_doc: notion: template: "Meeting Notes Template" link_to: original_page``` ### Notion + GitHub ```yamlgithub_sync: trigger: github_issue_created actions: - create_notion_page: database: "Engineering Tasks" properties: Title: "{issue.title}" GitHub: "{issue.url}" Labels: "{issue.labels}" Assignee: map_github_to_notion("{issue.assignee}") reverse_sync: trigger: notion_status_changed to: "Done" action: close_github_issue``` --- ## Output Example **Request**: "Set up Notion automation for a content team" **Output**: ```markdown# Content Team Notion Setup ## Database: Content Calendar ### Properties| Property | Type | Options ||----------|------|---------|| Title | Title | - || Status | Select | Idea, Writing, Editing, Ready, Published || Author | Person | - || Publish Date | Date | - || Platform | Multi-select | Blog, LinkedIn, Twitter, Newsletter || Type | Select | Article, Video, Infographic, Thread | ### Automations **1. New Content Idea → Slack**```yamltrigger: page_created, Status = "Idea"action: post_to_slack("#content-ideas")message: "💡 New content idea: {Title} by {Author}"``` **2. Ready for Review → Assign Editor**```yamltrigger: status_changed_to "Editing"action: - assign_editor (round_robin) - set_due_date (+3 days) - slack_dm_editor``` **3. Published → Update Tracker**```yamltrigger: status_changed_to "Published"action: - add_to_analytics_sheet - post_celebration_slack - schedule_engagement_check (+7 days)``` ### Views1. **Calendar** - See publishing schedule2. **Kanban** - Track status3. **By Author** - Individual workload4. **This Week** - Filtered view ### Templates- Blog Post Template- Social Thread Template- Newsletter Template``` --- *Notion Automation Skill - Part of Claude Office Skills*Related skills