A reusable Notion + MCP workflow for automated job sourcing and daily application prep.
This is a clean, de-identified template you can copy-paste into Claude, Grok, Cursor, or any LLM that supports tools/MCP.
- Weekly Sourcing: Scans Gmail digests + job boards → filters by fit → resolves real URLs → deep researches the top 3 → writes full application notes
- Daily Quota: Pulls highest-fit roles, verifies they’re still live, fully preps them on the Notion page, and notifies you
- You only review and click Apply (no browser automation of ATS forms)
Gmail · Notion · Web Search · Firecrawl · Claude (or any strong LLM)
Firecrawl is used for:
- Resolving real Greenhouse / Lever / Ashby / company career page URLs
- Scraping full job descriptions and company pages (especially JS-heavy ones)
- Fallback when normal fetch fails
Don’t have Firecrawl yet?
Get started here (referral): https://firecrawl.link/alberto-de-pablo
- Duplicate into your own Notion workspace
- Connect your MCPs (Gmail, Notion, Firecrawl, web search, etc.)
- Replace every
[YOUR ...]placeholder with your own details - Point the agent at your own databases
- Schedule weekly sourcing + daily application quota
| Field | Value |
|---|---|
| Agent Name | Career Agent |
| Capabilities | Text Generation · Web Search · Data Analysis |
| Owner | [YOUR NAME] |
| MCP / API connections | [YOUR MCPs — e.g. Claude, Gmail, Notion, Firecrawl] |
| Monthly Runs (est.) | [YOUR ESTIMATED MONTHLY RUNS] |
| Est. Cost Per Run | [YOUR EST. COST PER RUN] |
| Status | Task Pending |
| Job Tracker File | [LINK TO YOUR OWN JOB APPLICATION TRACKER SHEET] |
| Resume / Profile Reference | [LINK TO YOUR OWN RESUME PAGE] |
Purpose
The Career Agent is a Notion-based workflow that automates weekly sourcing and daily application quotas for [YOUR NAME]’s [YOUR TARGET FIELD/INDUSTRY] job hunt. It scans a dedicated Gmail label and job boards, filters listings against core skills, adds qualified roles to a Career Postings database, and creates detailed application notes for the top three fits. A daily routine ensures at least [N] live postings are pre-prepared each morning.
| # | Step | Tool / Source | Output |
|---|---|---|---|
| 1 | Scan Gmail | Gmail MCP · label [YOUR GMAIL LABEL] |
Raw job listings from latest digest |
| 2 | Scan job board(s) | Pre-filtered board URLs | New listings since last run |
| 3 | Filter roles | Claude — fit scoring | Qualified list |
| 4 | Resolve real URLs | WebSearch · Firecrawl · Apify fallback | Verified Greenhouse / Lever / Ashby / company URLs |
| 5 | Add to Career Postings DB | Notion MCP | New page per role with all fields |
| 6 | Deep research — top 3 | WebFetch · Firecrawl · Apify | Full JD · company stage/news · key contacts |
| 7 | Create application notes | Written on the Career Postings page | Fit analysis · Checklist · LinkedIn DM · Cover letter · Resume bullets · Screening Q&As |
| 8 | Log to Documentation DB | Notion MCP | Agent Update row + reverse relation |
Include
- Roles in
[YOUR TARGET ROLE CATEGORIES](e.g. BD · Partnerships · Sales · GTM · Growth) - Must match ≥ 2–3 of your core skills
Reject (still log, but don’t spend time on them)
- Junior roles, wrong seniority, unrelated verticals, etc.
Fallback rules
- Notion write fails → output markdown table for manual paste
- JS-rendered boards → Firecrawl or Apify
- Email tracking links → always verify the real URL with Firecrawl/web search before saving
- Hiring manager contacts → verify they still work at the company
Goal: At least [N] applications submitted every day.
Steps
- Pull rows from Career Postings with Status = New, sorted by Fit Score (High first)
- Verify each posting is still live. If closed → mark Closed – Expired
- If fewer than
[N]live rows, run weekly sourcing first - For each selected role, run full prep and write everything onto the Notion page
- Leave Status = New (you apply yourself)
- Send yourself a notification with the Notion link + Apply URL
- After you submit, update Status → Applied and log it
Rules
- Always use your primary application email
- Never fill EEOC / voluntary self-ID fields
- No browser automation of ATS forms — prep happens in Notion, you click Apply
You are an expert [YOUR TARGET FIELD] Job Hunter Assistant for [YOUR NAME], operating two recurring workflows: weekly sourcing and daily application quota (≥ [N] / day).
Profile summary
Full background: [LINK TO YOUR RESUME PAGE] — fetch it fresh each run.
Fit criteria
Strong fit = roles in [YOUR TARGET ROLE CATEGORIES].
Only keep listings matching ≥ 2–3 of your core skill areas:
[LIST YOUR 5–9 CORE SKILLS].
Step-by-step
- Scan Gmail label
[YOUR LABEL]for the most recent digest + any new forwarded job emails. - Scan your job board(s) for new listings since last run.
- Extract company, title, location, requirements, Apply URL, salary, date posted.
- Match against profile — keep only strong fits.
- Add to Career Postings (dedupe on Role + Company + Apply URL). Populate all fields including Fit Score, Key Strengths, Key Gap, Approach Angle, etc.
- For the top 3 highest-fit roles, use Firecrawl + web tools for deep research and write full application notes directly onto the Career Postings page.
- Log the run to Documentation DB and maintain the reverse “Documentation” relation.
Do not add extra commentary unless there is an error.
MIT
