notion-sync

Publish ranked jobs and application statuses to a Notion database via MCP.

Updated Sep 23, 2026
One-click install
npx skills add https://github.com/zaheer037/job-search --skill notion-sync-zaheer037
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: notion-sync
Source: https://github.com/zaheer037/job-search/tree/main/.agents/skills/notion-sync
Command: npx skills add https://github.com/zaheer037/job-search --skill notion-sync-zaheer037

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Job seekers tracking applications in local files lack a glanceable, anywhere-accessible view of their pipeline. This Skill pushes a read-only mirror of ranked jobs and tracked applications into a Notion database while keeping the repo files as the system of record. ## Core Features & Use Cases - Idempotent upsert on Key: Re-running the sync never creates duplicate rows; matching uses the stored job key, and page bodies are write-once so user notes are never clobbered. - Graceful degradation: When the Notion MCP server is not connected or not authenticated, the command exits cleanly with one message and zero side effects. - Status and deadline precedence: Tracker data wins over scraper data, with canonical status normalization (e.g. no response → no_response) before writing to Notion select fields. - Use Case: After running /scrape, /rank, and /apply, invoke /notion-sync to create a "Job Search Pipeline" database with one row per job showing score, verdict, status, deadline, and links, viewable from phone or web. ## Quick Start Run /notion-sync to publish all jobs scoring 60 or above plus every tracked application to my Notion workspace.

Frequently Asked Questions about notion-sync

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync job applications to a Notion database?▼

Run /notion-sync after connecting the Notion MCP server. It reads ranked jobs from seen_jobs.json and applications from job_search_tracker.csv, then upserts one database row per job keyed on the stored job key, creating a "Job Search Pipeline" database on first run.

How do I connect the Notion MCP server for job tracking?▼

Run `claude mcp add --transport http notion https://mcp.notion.com/mcp`, start a new session, then run /mcp to complete OAuth login. The sync command never initiates OAuth itself; it exits with instructions if the server is not authenticated.

Does notion-sync overwrite my notes in Notion pages?▼

No. Page bodies are write-once: updates only touch properties like Status, Score, and Deadline. Your manually added notes stay intact unless you explicitly pass --rebuild, which rewrites bodies after warning you.

Can edits made in Notion sync back to the tracker CSV?▼

No. The sync is strictly one-way. The repo files remain the source of truth, and application outcomes must be recorded through /outcome, which the next sync then pushes to Notion as property updates.

What happens if a job posting URL is dead during sync?▼

The detail page gets an explicit "Posting no longer available (checked YYYY-MM-DD)" note. The command never reconstructs posting content from memory, so every page claim traces to stored state or actually fetched content.

Does notion-sync upload my CV or cover letter to Notion?▼

No. Documents sync as filenames only. CVs and cover letters stay in the local documents/applications/ archive; the Notion row names the files so you know what to open locally.