Project Tracker
When to Use This Skill
Use this skill when you need to:
- Create a project task database in Notion from a project brief, scope document, or verbal description
- Replace a spreadsheet, whiteboard, or sticky-note system for tracking project tasks
- Set up task tracking for a new client engagement, product launch, or internal initiative
- Build a lightweight project management system without paying for Asana, Monday, or ClickUp
- Pre-populate a task board with phases, owners, due dates, and priorities from a project plan
DO NOT use this skill for:
- Client or contact relationship tracking (use a client-crm skill instead)
- Kanban-only boards with no task metadata (just use a plain Notion board)
- Enterprise portfolio management across dozens of projects (too complex for a single database)
- Time tracking or invoicing (different schema and tooling needed)
- Recurring task management or habit tracking (this is for finite project scopes)
Quick Reference: Project Tracker Features
| Feature |
Details |
| Properties |
9 fields per task record |
| Status stages |
5 (Not Started through Blocked) |
| Priority levels |
4 (Urgent, High, Medium, Low) |
| Database views |
5 pre-built filtered views |
| Seeding |
Bulk import from project brief, scope doc, or task list |
| Usage guide |
Common operations documented for the user |
Quick Reference: Database Schema
| Property |
Type |
Purpose |
Default/Options |
| Task Name |
Title |
Short, action-oriented task description |
Required |
| Status |
Select |
Current state of the task |
Not Started |
| Priority |
Select |
Urgency and importance level |
Medium |
| Owner |
Rich text |
Person responsible for the task |
Empty |
| Due Date |
Date |
Deadline for task completion |
Empty |
| Project Phase |
Select |
Which phase of the project this task belongs to |
See options below |
| Description |
Rich text |
Detailed requirements, acceptance criteria, or notes |
Empty |
| Dependencies |
Rich text |
Other tasks that must complete before this one can start |
Empty |
| Tags |
Multi-select |
Categories for filtering and grouping |
See options below |
Status Options
Not Started --> In Progress --> In Review --> Complete --> Blocked
| Status |
Meaning |
Action Required |
| Not Started |
Task is defined but work has not begun |
Assign owner and due date if missing |
| In Progress |
Actively being worked on |
Owner updates Description with progress notes |
| In Review |
Work is done, awaiting approval or feedback |
Reviewer provides feedback within 2 business days |
| Complete |
Task is finished and approved |
No further action needed |
| Blocked |
Cannot proceed due to a dependency or issue |
Log the blocker in Description, escalate to project lead |
Priority Options
| Priority |
Color |
When to Use |
| Urgent |
Red |
Blocks other tasks or has a deadline within 48 hours |
| High |
Orange |
Critical path item, needed this week |
| Medium |
Yellow |
Standard task, due within the current phase |
| Low |
Gray |
Nice-to-have, can slip without impacting the project |
Default Project Phase Options
Phases are customized per project. If the user does not specify phases, use these defaults:
| Phase |
Purpose |
| Planning |
Research, requirements gathering, scoping |
| Design |
Wireframes, mockups, architecture, strategy |
| Build |
Development, writing, creation, production |
| Review |
Testing, QA, feedback, revisions |
| Launch |
Deployment, go-live, publishing, delivery |
Default Tag Options
milestone, client-facing, internal, content, design, development, admin, research, meeting, deliverable
Core Workflow
EVERY PROJECT TRACKER STARTS BY GATHERING THE PROJECT DETAILS AND CREATING THE DATABASE WITH THE FULL SCHEMA BEFORE ADDING ANY TASKS -- NEVER ADD PAGES TO A DATABASE THAT IS MISSING PROPERTIES.
Phase 1: Gather Project Details
Collect these details from the user before building anything:
- Project name -- what is this project called
- Notion parent page -- where should the tracker database live (page name or URL)
- Project phases -- custom phase names, or accept the 5 defaults (Planning, Design, Build, Review, Launch)
- Team members -- list of people who will own tasks (names only; these go in the Owner field)
- Timeline -- overall start date, end date, or phase-level deadlines
- Project brief or task list -- a scope document, brief, bullet list, or verbal description of what needs to get done
If the user provides only items 1 and 2, proceed with all defaults and generate tasks from context. Ask only about missing critical details.
Brief template for vague requests:
I'll build your project tracker in Notion. Quick answers needed:
1. What is the project name?
2. Which Notion page should I create the tracker under?
3. What are the project phases? (default: Planning, Design, Build, Review, Launch)
4. Who are the team members? (names for task ownership)
5. What is the timeline? (start date, end date, or key deadlines)
6. Do you have a project brief, scope doc, or task list I should use to pre-populate tasks?
Phase 2: Create the Database in Notion
- Call
notion-search with the page name or keywords the user provided to locate the parent page
- Confirm the parent page with the user if multiple matches exist
- Call
notion-create-database with the parent page ID and full schema:
Database title: [Project Name] Tracker
Properties to create:
Task Name -> title
Status -> select
options: Not Started, In Progress, In Review, Complete, Blocked
colors: gray, blue, purple, green, red
Priority -> select
options: Urgent, High, Medium, Low
colors: red, orange, yellow, gray
Owner -> rich_text
Due Date -> date
Project Phase -> select
options: [user's custom phases OR defaults: Planning, Design, Build, Review, Launch]
colors: blue, purple, orange, green, pink
Description -> rich_text
Dependencies -> rich_text
Tags -> multi_select
options: milestone, client-facing, internal, content, design, development,
admin, research, meeting, deliverable
colors: red, blue, gray, pink, purple, green, brown, yellow, orange, default
Verify the database was created by calling notion-fetch with the returned database ID
Confirm creation to the user:
Project tracker created: "[Project Name] Tracker"
Database ID: db_xyz789
Properties configured:
- Task Name (title)
- Status (5 stages: Not Started > In Progress > In Review > Complete > Blocked)
- Priority (4 levels: Urgent, High, Medium, Low)
- Owner (text)
- Due Date (date)
- Project Phase ([number] phases)
- Description (rich text)
- Dependencies (rich text)
- Tags (10 default tags)
IF THE PARENT PAGE IS NOT FOUND:
- Ask the user for the exact page title or a URL
- Try
notion-search again with the corrected term
- If still not found, ask the user to share the page with the Notion integration
- After 3 failed searches, stop and explain: "I cannot find that page. Please verify the page exists and that the Notion integration has access to it. Check Settings > Connections in Notion."
IF DATABASE CREATION FAILS:
- Check the error message for permission issues
- Verify the parent page ID by calling
notion-fetch on it
- Retry once with the same parameters
- If it fails again: "Database creation failed. This usually means the Notion integration does not have permission to create content on that page. Go to the parent page in Notion, click the three-dot menu, go to Connections, and ensure the integration has 'Can edit' access."
Phase 3: Pre-Populate Tasks from Project Brief
Parse the user's project brief, scope document, or task list into discrete tasks
For each task, map the data to the schema:
- Task Name -- short, action-oriented (start with a verb: "Design homepage wireframe", "Write onboarding email sequence")
- Status -- default to "Not Started" for all new tasks
- Priority -- infer from context; milestone items and deadline-sensitive tasks get "High" or "Urgent"; default to "Medium"
- Owner -- assign based on user instructions or skill/role matching; leave empty if no team info provided
- Due Date -- calculate from timeline if provided; distribute tasks across phases evenly if only start/end dates given
- Project Phase -- assign based on task nature and project flow
- Description -- extract relevant details, acceptance criteria, or specifications from the brief
- Dependencies -- note if a task explicitly depends on another task (e.g., "Design must complete before Build begins")
- Tags -- infer from task content (e.g., client deliverable =
client-facing + deliverable, research task = research)
Call notion-create-pages to add all tasks to the database
Report seeding results:
Tasks imported: 20 of 20 successful
PLANNING (4 tasks):
Define project requirements — Medium, Sarah, Due: Mar 10
Audit existing website analytics — High, Marcus, Due: Mar 12
Stakeholder kickoff meeting — Urgent, Sarah, Due: Mar 7
Compile brand asset inventory — Low, Unassigned, Due: Mar 14
DESIGN (5 tasks): [listed with owner, priority, due date]
BUILD (7 tasks): [listed with owner, priority, due date]
REVIEW (2 tasks): [listed with owner, priority, due date]
LAUNCH (2 tasks): [listed with owner, priority, due date]
Total: 20 tasks | Assigned: 16 | Unassigned: 4 | Milestones: 3
IF THE BRIEF IS VAGUE OR INCOMPLETE:
- Generate reasonable tasks based on the project type and phases
- Present the generated task list to the user for approval BEFORE creating pages:
I generated 18 tasks from your brief. Here is the breakdown by phase:
PLANNING (3 tasks):
1. Define target audience and goals — Medium
2. Audit competitor websites — Medium
3. Gather brand assets and copy — High
Want me to proceed, or would you like to add, remove, or modify any tasks?
- NEVER create tasks without confirmation when the data is inferred rather than explicit
IF BATCH CREATION PARTIALLY FAILS:
- Report which tasks succeeded and which failed
- Retry each failed task individually with
notion-create-pages
- If individual retries fail, provide the task details formatted for manual entry
Phase 4: Set Up Views and Confirm
After the database and tasks are in place, guide the user on setting up filtered views. Notion MCP does not support creating views programmatically, so provide exact instructions.
Present these 5 views for the user to create manually:
RECOMMENDED VIEWS (create these in Notion):
1. ALL TASKS (Table view)
- View type: Table
- Sort: Due Date (ascending)
- No filter
- Purpose: Full task list ordered by deadline
2. MY TASKS (Table view)
- View type: Table
- Filter: Owner contains [your name]
- Sort: Due Date (ascending), then Priority (Urgent first)
- Purpose: Personal task list for each team member
3. THIS WEEK (Table view)
- View type: Table
- Filter: Due Date is within the next 7 days AND Status is not "Complete"
- Sort: Priority (Urgent first), then Due Date (ascending)
- Purpose: Weekly sprint view showing what needs attention now
4. BY PHASE (Board view)
- View type: Board
- Group by: Project Phase
- Filter: Status is not "Complete"
- Sort: Priority (Urgent first)
- Purpose: See active tasks organized by project phase
5. BLOCKED ITEMS (Table view)
- View type: Table
- Filter: Status is "Blocked"
- Sort: Priority (Urgent first)
- Purpose: Escalation list — resolve blockers before they cascade
Deliver a final summary including: database name and ID, task count by phase with date ranges, assigned vs. unassigned count, milestone count, and 3-4 concrete next steps (create views, assign unassigned tasks, review weekly, check blocked items daily).
Example 1: Website Redesign Project
User request: "We are redesigning our company website. 4 phases: Discovery, Design, Development, QA/Launch. Team is Sarah (PM), Marcus (designer), Priya (developer), and James (copywriter). Timeline is March 3 to April 25. My Notion page is called 'Active Projects'. Here is our scope..."
Execution:
- Gather: Project name "Website Redesign", parent page "Active Projects", 4 custom phases, 4 team members, 8-week timeline, scope document provided
- Search:
notion-search for "Active Projects" -> found pg_active456, confirmed
- Create:
notion-create-database with parent pg_active456, title "Website Redesign Tracker", custom phases (Discovery, Design, Development, QA/Launch) -> db_redesign789
- Seed 20 tasks:
DISCOVERY (5 tasks, Mar 3-10):
Stakeholder kickoff meeting — Urgent, Sarah, milestone
Audit current site analytics — High, Marcus
Competitor analysis (5 sites) — Medium, James
Define sitemap and page hierarchy — High, Sarah
Compile brand guidelines and assets — Medium, James
DESIGN (6 tasks, Mar 14-24):
Create wireframes for 8 key pages — High, Marcus
Design homepage mockup — Urgent, Marcus, milestone
Design inner page templates — High, Marcus
Write homepage copy — High, James
Write service page copy (4 pages) — Medium, James
Client design review and approval — High, Sarah, client-facing
DEVELOPMENT (6 tasks, Mar 25 - Apr 7):
Set up staging environment — High, Priya
Build homepage — Urgent, Priya
Build inner page templates — High, Priya
Integrate contact form and CRM — Medium, Priya
Mobile responsive QA pass — High, Priya
Content migration (blog posts) — Medium, James
QA/LAUNCH (3 tasks, Apr 11-25):
Full QA testing across browsers — High, Priya
Client UAT and final approval — Urgent, Sarah, milestone, client-facing
DNS switch and go-live — Urgent, Priya, milestone
Total: 20 tasks | Assigned: 20 | Milestones: 4 | Client-facing: 2
- Deliver: View instructions + final summary with phase breakdown and next steps
Example 2: Product Launch Project
User request: "I am launching a new online course in 6 weeks. Phases are Pre-Launch, Launch Week, and Post-Launch. It is just me doing everything. My Notion workspace has a page called 'Course Business'. I have a rough outline of what needs to happen."
Execution:
- Gather: Project name "Online Course Launch", parent page "Course Business", 3 custom phases, solo operator, 6-week timeline, rough outline provided
- Search:
notion-search for "Course Business" -> found pg_course321, confirmed
- Create:
notion-create-database with parent pg_course321, title "Online Course Launch Tracker", custom phases (Pre-Launch, Launch Week, Post-Launch) -> db_launch654
- Seed 15 tasks:
PRE-LAUNCH (9 tasks, Week 1-4):
Finalize course curriculum outline — Urgent, You, milestone
Record video lessons (8 modules) — High, You
Edit and upload videos to platform — High, You
Write sales page copy — High, You, client-facing
Design course thumbnail and graphics — Medium, You, design
Set up payment and checkout flow — High, You
Build email waitlist sequence (5 emails) — High, You, content
Create 3 social media teaser posts — Medium, You, content
Set up affiliate tracking links — Low, You
LAUNCH WEEK (4 tasks, Week 5):
Send launch email to waitlist — Urgent, You, milestone
Publish sales page and open cart — Urgent, You, milestone
Post daily social media content (5 days) — High, You, content
Run live Q&A or webinar — High, You, client-facing
POST-LAUNCH (2 tasks, Week 6):
Send follow-up email to non-buyers — Medium, You, content
Collect testimonials from first students — High, You, milestone, client-facing
Total: 15 tasks | Assigned: 15 | Milestones: 4 | Content: 4
- Deliver: View instructions (with solopreneur tip: skip "My Tasks" view, use "All Tasks" and "This Week" instead) + final summary with phase breakdown and milestone checkpoints
Pre-Delivery Checklist
Run this checklist before delivering the tracker to the user. DO NOT SKIP ANY ITEM.
| Check |
What to Verify |
How |
| Database exists |
Database was created and is accessible |
Call notion-fetch with database ID |
| All 9 properties present |
Every property from the schema is configured |
Verify in the notion-fetch response |
| Status options correct |
All 5 statuses exist as select options |
Check select options in database schema |
| Priority options correct |
All 4 priorities exist as select options |
Check select options in database schema |
| Project phases correct |
All custom or default phases exist as select options |
Check select options in database schema |
| Tags configured |
All 10 default tags (or custom set) exist as multi-select options |
Check multi-select options in database schema |
| Due Date configured |
Due Date is a date type property |
Verify property type in schema |
| Tasks seeded |
All tasks were created successfully |
Count created pages vs. expected |
| No duplicate tasks |
Same task was not added twice during seeding |
Check for duplicate task names |
| Owners assigned |
Tasks have owners where team info was provided |
Verify Owner field on seeded pages |
| Due dates set |
Tasks have due dates where timeline was provided |
Verify Date values on seeded pages |
| Milestones tagged |
Key deliverables are tagged with "milestone" |
Verify Tags on milestone tasks |
| View instructions delivered |
User received setup instructions for all 5 views |
Confirm in delivery message |
| Parent page correct |
Database lives under the page the user requested |
Verify parent in notion-fetch response |
Pre-Delivery Checklist:
[x] Database created and accessible
[x] All 9 properties configured
[x] Status options correct (5 stages)
[x] Priority options correct (4 levels)
[x] Project phases correct (custom or default)
[x] Tags configured (10 default or custom)
[x] Due Date property configured
[x] All tasks seeded successfully
[x] No duplicate tasks
[x] Owners assigned where applicable
[x] Due dates set from timeline
[x] Milestones tagged
[x] View setup instructions delivered
[x] Database under correct parent page
Recovery and Troubleshooting
Notion Search Returns No Results
If notion-search cannot find the target parent page:
- Ask the user for the exact page title (case-sensitive)
- Try searching with a shorter keyword (e.g., "Projects" instead of "Active Projects Dashboard")
- Ask the user to confirm the page exists and is not in a private section
- If 3 searches fail: "I cannot locate that page. Please verify the page title and ensure the Notion integration has access. Check Settings > Connections in Notion, find the integration, and confirm the page is shared with it."
Database Creation Fails
If notion-create-database returns an error:
- Verify the parent page ID by calling
notion-fetch on it
- Check for permission errors in the response -- the integration may lack write access
- Retry once with the same parameters
- If it fails again: "Database creation failed due to a permissions issue. Please go to the parent page in Notion, click the three-dot menu, go to Connections, and ensure the integration has 'Can edit' access."
Task Seeding Partially Fails
If some tasks fail to create:
- Report which tasks succeeded and which failed
- Retry each failed task individually with
notion-create-pages
- If individual retries fail, check if a required property is missing or malformed
- If retries continue to fail: Provide the task details formatted for manual entry:
Could not import these tasks automatically:
Set up staging environment — High, Priya, Due: Mar 25
To add manually: open the tracker database in Notion, click "+ New",
and enter the details above.
Notion API Rate Limits
If you receive rate limit errors during bulk seeding:
- Pause for 10 seconds between batches
- Reduce batch size to 5 tasks per
notion-create-pages call
- Continue until all tasks are imported
- DO NOT skip tasks due to rate limits -- slow down and retry
User Wants to Modify the Schema Later
Notion MCP does not support modifying existing database schemas. Instruct the user:
- To add a property: open the tracker, click "+" in the header row, choose type, name it
- To modify a property: click the column header, select "Edit property", change type/name/options
User Wants to Add More Tasks Later
- Call
notion-fetch to confirm the database ID and schema
- Parse the new tasks following the same mapping rules in Phase 3
- Call
notion-create-pages to add the new tasks
- Report the additions and updated totals
Duplicate Detection
Flag potential duplicates before creating pages (e.g., "Write homepage copy" and "Draft homepage content" -- same task?). Present them to the user for confirmation. NEVER create duplicate task records -- always confirm first.
Anti-Patterns
- DO NOT create the database without the full property schema -- adding properties after pages exist causes data alignment issues
- DO NOT invent task details not present in the brief -- if the brief is vague, present generated tasks for approval first
- DO NOT skip the parent page confirmation -- creating a tracker under the wrong page is difficult to undo
- DO NOT assign owners that the user did not mention -- leave the Owner field empty for unassigned tasks
- DO NOT deliver without the view setup instructions -- the tracker is only valuable when the user can filter and sort tasks
- DO NOT set all tasks to "Urgent" or "High" -- a project where everything is urgent has no prioritization at all
- DO NOT create views programmatically -- Notion MCP does not support this; provide manual instructions instead
- DO NOT promise automated reminders, notifications, or status updates -- this is a database, not a project management app with automations
1---2name: project-tracker3description: Creates a project management database in Notion with tasks, statuses, owners, due dates, and priorities, pre-populated from a project brief or scope document. Use when a user needs to set up project tracking for a new engagement, wants to replace spreadsheet-based task management, or needs a lightweight PM system without paid software.4---56# Project Tracker78## When to Use This Skill910Use this skill when you need to:11- Create a project task database in Notion from a project brief, scope document, or verbal description12- Replace a spreadsheet, whiteboard, or sticky-note system for tracking project tasks13- Set up task tracking for a new client engagement, product launch, or internal initiative14- Build a lightweight project management system without paying for Asana, Monday, or ClickUp15- Pre-populate a task board with phases, owners, due dates, and priorities from a project plan1617**DO NOT** use this skill for:18- Client or contact relationship tracking (use a client-crm skill instead)19- Kanban-only boards with no task metadata (just use a plain Notion board)20- Enterprise portfolio management across dozens of projects (too complex for a single database)21- Time tracking or invoicing (different schema and tooling needed)22- Recurring task management or habit tracking (this is for finite project scopes)2324---2526## Quick Reference: Project Tracker Features2728| Feature | Details |29|---------|---------|30| Properties | 9 fields per task record |31| Status stages | 5 (Not Started through Blocked) |32| Priority levels | 4 (Urgent, High, Medium, Low) |33| Database views | 5 pre-built filtered views |34| Seeding | Bulk import from project brief, scope doc, or task list |35| Usage guide | Common operations documented for the user |3637## Quick Reference: Database Schema3839| Property | Type | Purpose | Default/Options |40|----------|------|---------|-----------------|41| Task Name | Title | Short, action-oriented task description | Required |42| Status | Select | Current state of the task | Not Started |43| Priority | Select | Urgency and importance level | Medium |44| Owner | Rich text | Person responsible for the task | Empty |45| Due Date | Date | Deadline for task completion | Empty |46| Project Phase | Select | Which phase of the project this task belongs to | See options below |47| Description | Rich text | Detailed requirements, acceptance criteria, or notes | Empty |48| Dependencies | Rich text | Other tasks that must complete before this one can start | Empty |49| Tags | Multi-select | Categories for filtering and grouping | See options below |5051### Status Options5253```54Not Started --> In Progress --> In Review --> Complete --> Blocked55```5657| Status | Meaning | Action Required |58|--------|---------|-----------------|59| Not Started | Task is defined but work has not begun | Assign owner and due date if missing |60| In Progress | Actively being worked on | Owner updates Description with progress notes |61| In Review | Work is done, awaiting approval or feedback | Reviewer provides feedback within 2 business days |62| Complete | Task is finished and approved | No further action needed |63| Blocked | Cannot proceed due to a dependency or issue | Log the blocker in Description, escalate to project lead |6465### Priority Options6667| Priority | Color | When to Use |68|----------|-------|-------------|69| Urgent | Red | Blocks other tasks or has a deadline within 48 hours |70| High | Orange | Critical path item, needed this week |71| Medium | Yellow | Standard task, due within the current phase |72| Low | Gray | Nice-to-have, can slip without impacting the project |7374### Default Project Phase Options7576Phases are customized per project. If the user does not specify phases, use these defaults:7778| Phase | Purpose |79|-------|---------|80| Planning | Research, requirements gathering, scoping |81| Design | Wireframes, mockups, architecture, strategy |82| Build | Development, writing, creation, production |83| Review | Testing, QA, feedback, revisions |84| Launch | Deployment, go-live, publishing, delivery |8586### Default Tag Options8788`milestone`, `client-facing`, `internal`, `content`, `design`, `development`, `admin`, `research`, `meeting`, `deliverable`8990---9192## Core Workflow9394EVERY PROJECT TRACKER STARTS BY GATHERING THE PROJECT DETAILS AND CREATING THE DATABASE WITH THE FULL SCHEMA BEFORE ADDING ANY TASKS -- NEVER ADD PAGES TO A DATABASE THAT IS MISSING PROPERTIES.9596### Phase 1: Gather Project Details9798Collect these details from the user before building anything:991001. **Project name** -- what is this project called1012. **Notion parent page** -- where should the tracker database live (page name or URL)1023. **Project phases** -- custom phase names, or accept the 5 defaults (Planning, Design, Build, Review, Launch)1034. **Team members** -- list of people who will own tasks (names only; these go in the Owner field)1045. **Timeline** -- overall start date, end date, or phase-level deadlines1056. **Project brief or task list** -- a scope document, brief, bullet list, or verbal description of what needs to get done106107If the user provides only items 1 and 2, proceed with all defaults and generate tasks from context. Ask only about missing critical details.108109**Brief template for vague requests:**110111```112I'll build your project tracker in Notion. Quick answers needed:1131141. What is the project name?1152. Which Notion page should I create the tracker under?1163. What are the project phases? (default: Planning, Design, Build, Review, Launch)1174. Who are the team members? (names for task ownership)1185. What is the timeline? (start date, end date, or key deadlines)1196. Do you have a project brief, scope doc, or task list I should use to pre-populate tasks?120```121122### Phase 2: Create the Database in Notion1231241. Call `notion-search` with the page name or keywords the user provided to locate the parent page1252. Confirm the parent page with the user if multiple matches exist1263. Call `notion-create-database` with the parent page ID and full schema:127128**Database title:** `[Project Name] Tracker`129130**Properties to create:**131132```133Task Name -> title134Status -> select135 options: Not Started, In Progress, In Review, Complete, Blocked136 colors: gray, blue, purple, green, red137Priority -> select138 options: Urgent, High, Medium, Low139 colors: red, orange, yellow, gray140Owner -> rich_text141Due Date -> date142Project Phase -> select143 options: [user's custom phases OR defaults: Planning, Design, Build, Review, Launch]144 colors: blue, purple, orange, green, pink145Description -> rich_text146Dependencies -> rich_text147Tags -> multi_select148 options: milestone, client-facing, internal, content, design, development,149 admin, research, meeting, deliverable150 colors: red, blue, gray, pink, purple, green, brown, yellow, orange, default151```1521534. Verify the database was created by calling `notion-fetch` with the returned database ID1541555. Confirm creation to the user:156157```158Project tracker created: "[Project Name] Tracker"159Database ID: db_xyz789160161Properties configured:162 - Task Name (title)163 - Status (5 stages: Not Started > In Progress > In Review > Complete > Blocked)164 - Priority (4 levels: Urgent, High, Medium, Low)165 - Owner (text)166 - Due Date (date)167 - Project Phase ([number] phases)168 - Description (rich text)169 - Dependencies (rich text)170 - Tags (10 default tags)171```172173**IF THE PARENT PAGE IS NOT FOUND:**174- Ask the user for the exact page title or a URL175- Try `notion-search` again with the corrected term176- If still not found, ask the user to share the page with the Notion integration177- **After 3 failed searches, stop and explain:** "I cannot find that page. Please verify the page exists and that the Notion integration has access to it. Check Settings > Connections in Notion."178179**IF DATABASE CREATION FAILS:**180- Check the error message for permission issues181- Verify the parent page ID by calling `notion-fetch` on it182- Retry once with the same parameters183- **If it fails again:** "Database creation failed. This usually means the Notion integration does not have permission to create content on that page. Go to the parent page in Notion, click the three-dot menu, go to Connections, and ensure the integration has 'Can edit' access."184185### Phase 3: Pre-Populate Tasks from Project Brief1861871. Parse the user's project brief, scope document, or task list into discrete tasks1882. For each task, map the data to the schema:189 - **Task Name** -- short, action-oriented (start with a verb: "Design homepage wireframe", "Write onboarding email sequence")190 - **Status** -- default to "Not Started" for all new tasks191 - **Priority** -- infer from context; milestone items and deadline-sensitive tasks get "High" or "Urgent"; default to "Medium"192 - **Owner** -- assign based on user instructions or skill/role matching; leave empty if no team info provided193 - **Due Date** -- calculate from timeline if provided; distribute tasks across phases evenly if only start/end dates given194 - **Project Phase** -- assign based on task nature and project flow195 - **Description** -- extract relevant details, acceptance criteria, or specifications from the brief196 - **Dependencies** -- note if a task explicitly depends on another task (e.g., "Design must complete before Build begins")197 - **Tags** -- infer from task content (e.g., client deliverable = `client-facing` + `deliverable`, research task = `research`)1981993. Call `notion-create-pages` to add all tasks to the database2002014. Report seeding results:202203```204Tasks imported: 20 of 20 successful205206 PLANNING (4 tasks):207 Define project requirements — Medium, Sarah, Due: Mar 10208 Audit existing website analytics — High, Marcus, Due: Mar 12209 Stakeholder kickoff meeting — Urgent, Sarah, Due: Mar 7210 Compile brand asset inventory — Low, Unassigned, Due: Mar 14211212 DESIGN (5 tasks): [listed with owner, priority, due date]213 BUILD (7 tasks): [listed with owner, priority, due date]214 REVIEW (2 tasks): [listed with owner, priority, due date]215 LAUNCH (2 tasks): [listed with owner, priority, due date]216217Total: 20 tasks | Assigned: 16 | Unassigned: 4 | Milestones: 3218```219220**IF THE BRIEF IS VAGUE OR INCOMPLETE:**221- Generate reasonable tasks based on the project type and phases222- Present the generated task list to the user for approval BEFORE creating pages:223 ```224 I generated 18 tasks from your brief. Here is the breakdown by phase:225226 PLANNING (3 tasks):227 1. Define target audience and goals — Medium228 2. Audit competitor websites — Medium229 3. Gather brand assets and copy — High230231 Want me to proceed, or would you like to add, remove, or modify any tasks?232 ```233- **NEVER create tasks without confirmation when the data is inferred rather than explicit**234235**IF BATCH CREATION PARTIALLY FAILS:**236- Report which tasks succeeded and which failed237- Retry each failed task individually with `notion-create-pages`238- If individual retries fail, provide the task details formatted for manual entry239240### Phase 4: Set Up Views and Confirm241242After the database and tasks are in place, guide the user on setting up filtered views. **Notion MCP does not support creating views programmatically**, so provide exact instructions.243244Present these 5 views for the user to create manually:245246```247RECOMMENDED VIEWS (create these in Notion):2482491. ALL TASKS (Table view)250 - View type: Table251 - Sort: Due Date (ascending)252 - No filter253 - Purpose: Full task list ordered by deadline2542552. MY TASKS (Table view)256 - View type: Table257 - Filter: Owner contains [your name]258 - Sort: Due Date (ascending), then Priority (Urgent first)259 - Purpose: Personal task list for each team member2602613. THIS WEEK (Table view)262 - View type: Table263 - Filter: Due Date is within the next 7 days AND Status is not "Complete"264 - Sort: Priority (Urgent first), then Due Date (ascending)265 - Purpose: Weekly sprint view showing what needs attention now2662674. BY PHASE (Board view)268 - View type: Board269 - Group by: Project Phase270 - Filter: Status is not "Complete"271 - Sort: Priority (Urgent first)272 - Purpose: See active tasks organized by project phase2732745. BLOCKED ITEMS (Table view)275 - View type: Table276 - Filter: Status is "Blocked"277 - Sort: Priority (Urgent first)278 - Purpose: Escalation list — resolve blockers before they cascade279```280281Deliver a final summary including: database name and ID, task count by phase with date ranges, assigned vs. unassigned count, milestone count, and 3-4 concrete next steps (create views, assign unassigned tasks, review weekly, check blocked items daily).282283---284285## Example 1: Website Redesign Project286287**User request:** "We are redesigning our company website. 4 phases: Discovery, Design, Development, QA/Launch. Team is Sarah (PM), Marcus (designer), Priya (developer), and James (copywriter). Timeline is March 3 to April 25. My Notion page is called 'Active Projects'. Here is our scope..."288289**Execution:**2902911. **Gather:** Project name "Website Redesign", parent page "Active Projects", 4 custom phases, 4 team members, 8-week timeline, scope document provided2922. **Search:** `notion-search` for "Active Projects" -> found `pg_active456`, confirmed2933. **Create:** `notion-create-database` with parent `pg_active456`, title "Website Redesign Tracker", custom phases (Discovery, Design, Development, QA/Launch) -> `db_redesign789`2944. **Seed 20 tasks:**295296```297DISCOVERY (5 tasks, Mar 3-10):298 Stakeholder kickoff meeting — Urgent, Sarah, milestone299 Audit current site analytics — High, Marcus300 Competitor analysis (5 sites) — Medium, James301 Define sitemap and page hierarchy — High, Sarah302 Compile brand guidelines and assets — Medium, James303304DESIGN (6 tasks, Mar 14-24):305 Create wireframes for 8 key pages — High, Marcus306 Design homepage mockup — Urgent, Marcus, milestone307 Design inner page templates — High, Marcus308 Write homepage copy — High, James309 Write service page copy (4 pages) — Medium, James310 Client design review and approval — High, Sarah, client-facing311312DEVELOPMENT (6 tasks, Mar 25 - Apr 7):313 Set up staging environment — High, Priya314 Build homepage — Urgent, Priya315 Build inner page templates — High, Priya316 Integrate contact form and CRM — Medium, Priya317 Mobile responsive QA pass — High, Priya318 Content migration (blog posts) — Medium, James319320QA/LAUNCH (3 tasks, Apr 11-25):321 Full QA testing across browsers — High, Priya322 Client UAT and final approval — Urgent, Sarah, milestone, client-facing323 DNS switch and go-live — Urgent, Priya, milestone324325Total: 20 tasks | Assigned: 20 | Milestones: 4 | Client-facing: 2326```3273285. **Deliver:** View instructions + final summary with phase breakdown and next steps329330---331332## Example 2: Product Launch Project333334**User request:** "I am launching a new online course in 6 weeks. Phases are Pre-Launch, Launch Week, and Post-Launch. It is just me doing everything. My Notion workspace has a page called 'Course Business'. I have a rough outline of what needs to happen."335336**Execution:**3373381. **Gather:** Project name "Online Course Launch", parent page "Course Business", 3 custom phases, solo operator, 6-week timeline, rough outline provided3392. **Search:** `notion-search` for "Course Business" -> found `pg_course321`, confirmed3403. **Create:** `notion-create-database` with parent `pg_course321`, title "Online Course Launch Tracker", custom phases (Pre-Launch, Launch Week, Post-Launch) -> `db_launch654`3414. **Seed 15 tasks:**342343```344PRE-LAUNCH (9 tasks, Week 1-4):345 Finalize course curriculum outline — Urgent, You, milestone346 Record video lessons (8 modules) — High, You347 Edit and upload videos to platform — High, You348 Write sales page copy — High, You, client-facing349 Design course thumbnail and graphics — Medium, You, design350 Set up payment and checkout flow — High, You351 Build email waitlist sequence (5 emails) — High, You, content352 Create 3 social media teaser posts — Medium, You, content353 Set up affiliate tracking links — Low, You354355LAUNCH WEEK (4 tasks, Week 5):356 Send launch email to waitlist — Urgent, You, milestone357 Publish sales page and open cart — Urgent, You, milestone358 Post daily social media content (5 days) — High, You, content359 Run live Q&A or webinar — High, You, client-facing360361POST-LAUNCH (2 tasks, Week 6):362 Send follow-up email to non-buyers — Medium, You, content363 Collect testimonials from first students — High, You, milestone, client-facing364365Total: 15 tasks | Assigned: 15 | Milestones: 4 | Content: 4366```3673685. **Deliver:** View instructions (with solopreneur tip: skip "My Tasks" view, use "All Tasks" and "This Week" instead) + final summary with phase breakdown and milestone checkpoints369370---371372## Pre-Delivery Checklist373374Run this checklist before delivering the tracker to the user. **DO NOT SKIP ANY ITEM.**375376| Check | What to Verify | How |377|-------|----------------|-----|378| Database exists | Database was created and is accessible | Call `notion-fetch` with database ID |379| All 9 properties present | Every property from the schema is configured | Verify in the `notion-fetch` response |380| Status options correct | All 5 statuses exist as select options | Check select options in database schema |381| Priority options correct | All 4 priorities exist as select options | Check select options in database schema |382| Project phases correct | All custom or default phases exist as select options | Check select options in database schema |383| Tags configured | All 10 default tags (or custom set) exist as multi-select options | Check multi-select options in database schema |384| Due Date configured | Due Date is a date type property | Verify property type in schema |385| Tasks seeded | All tasks were created successfully | Count created pages vs. expected |386| No duplicate tasks | Same task was not added twice during seeding | Check for duplicate task names |387| Owners assigned | Tasks have owners where team info was provided | Verify Owner field on seeded pages |388| Due dates set | Tasks have due dates where timeline was provided | Verify Date values on seeded pages |389| Milestones tagged | Key deliverables are tagged with "milestone" | Verify Tags on milestone tasks |390| View instructions delivered | User received setup instructions for all 5 views | Confirm in delivery message |391| Parent page correct | Database lives under the page the user requested | Verify parent in `notion-fetch` response |392393```394Pre-Delivery Checklist:395 [x] Database created and accessible396 [x] All 9 properties configured397 [x] Status options correct (5 stages)398 [x] Priority options correct (4 levels)399 [x] Project phases correct (custom or default)400 [x] Tags configured (10 default or custom)401 [x] Due Date property configured402 [x] All tasks seeded successfully403 [x] No duplicate tasks404 [x] Owners assigned where applicable405 [x] Due dates set from timeline406 [x] Milestones tagged407 [x] View setup instructions delivered408 [x] Database under correct parent page409```410411---412413## Recovery and Troubleshooting414415### Notion Search Returns No Results416417If `notion-search` cannot find the target parent page:4184191. Ask the user for the exact page title (case-sensitive)4202. Try searching with a shorter keyword (e.g., "Projects" instead of "Active Projects Dashboard")4213. Ask the user to confirm the page exists and is not in a private section4224. **If 3 searches fail:** "I cannot locate that page. Please verify the page title and ensure the Notion integration has access. Check Settings > Connections in Notion, find the integration, and confirm the page is shared with it."423424### Database Creation Fails425426If `notion-create-database` returns an error:4274281. Verify the parent page ID by calling `notion-fetch` on it4292. Check for permission errors in the response -- the integration may lack write access4303. Retry once with the same parameters4314. **If it fails again:** "Database creation failed due to a permissions issue. Please go to the parent page in Notion, click the three-dot menu, go to Connections, and ensure the integration has 'Can edit' access."432433### Task Seeding Partially Fails434435If some tasks fail to create:4364371. Report which tasks succeeded and which failed4382. Retry each failed task individually with `notion-create-pages`4393. If individual retries fail, check if a required property is missing or malformed4404. **If retries continue to fail:** Provide the task details formatted for manual entry:441 ```442 Could not import these tasks automatically:443444 Set up staging environment — High, Priya, Due: Mar 25445446 To add manually: open the tracker database in Notion, click "+ New",447 and enter the details above.448 ```449450### Notion API Rate Limits451452If you receive rate limit errors during bulk seeding:4534541. Pause for 10 seconds between batches4552. Reduce batch size to 5 tasks per `notion-create-pages` call4563. Continue until all tasks are imported4574. **DO NOT skip tasks due to rate limits** -- slow down and retry458459### User Wants to Modify the Schema Later460461**Notion MCP does not support modifying existing database schemas.** Instruct the user:462- To add a property: open the tracker, click "+" in the header row, choose type, name it463- To modify a property: click the column header, select "Edit property", change type/name/options464465### User Wants to Add More Tasks Later4664671. Call `notion-fetch` to confirm the database ID and schema4682. Parse the new tasks following the same mapping rules in Phase 34693. Call `notion-create-pages` to add the new tasks4704. Report the additions and updated totals471472### Duplicate Detection473474Flag potential duplicates before creating pages (e.g., "Write homepage copy" and "Draft homepage content" -- same task?). Present them to the user for confirmation. **NEVER create duplicate task records** -- always confirm first.475476---477478## Anti-Patterns479480- **DO NOT** create the database without the full property schema -- adding properties after pages exist causes data alignment issues481- **DO NOT** invent task details not present in the brief -- if the brief is vague, present generated tasks for approval first482- **DO NOT** skip the parent page confirmation -- creating a tracker under the wrong page is difficult to undo483- **DO NOT** assign owners that the user did not mention -- leave the Owner field empty for unassigned tasks484- **DO NOT** deliver without the view setup instructions -- the tracker is only valuable when the user can filter and sort tasks485- **DO NOT** set all tasks to "Urgent" or "High" -- a project where everything is urgent has no prioritization at all486- **DO NOT** create views programmatically -- Notion MCP does not support this; provide manual instructions instead487- **DO NOT** promise automated reminders, notifications, or status updates -- this is a database, not a project management app with automations