MCP.Market

grad-agent MCP server

by i-ninte·io.github.i-ninte/grad-agent·v0.2.9·4 stars

Autonomous MCP agent for grad school applications: prof discovery, cold emails, SOP, tracking.

B83/100grade B
What users say
No reviews yet
Be the first
Safety scan
B83/100

full report

Adoption
Growing

4 stars57 downloads/wk

Reviews

Write one

Nobody has reviewed grad-agent yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

grad-agent tools (38, 7 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • add_target
  • delete_postwrite action
  • discover_profs

    Fan out arXiv + OpenReview for recent papers in `area` (nlp|llm|ml|cv|ai4health|africa or raw query). Returns candidates with authors as prof leads.

  • draft_article

    Draft a blog post. Requires blog.enabled: true in profile.yaml.

  • draft_cold_emailwrite action

    Draft a cold email. Saves to drafts/, returns preview + banned_hits.

  • draft_sop

    Draft a Columbia-style SOP and compile to PDF. Returns {tex, pdf}.

  • find_prof_page

    Web search for a professor's lab page / email.

  • followups_due

    Profs emailed `days`+ ago with no reply and no nudge yet, each with a drafted follow-up ready to review and send.

  • get_letterhead

    Return the currently configured letterhead settings from ~/.grad-agent/.env.

  • ingest_replies

    Read-only IMAP scan: detect professor replies and tag the outreach log. Needs IMAP creds in .env (defaults to Gmail + SMTP credentials).

  • install_skills

    Symlink the bundled `lor-writing` and `sop-writing` skills into ~/.claude/skills/ so Claude Code / Claude Desktop pick them up.

  • interview_prep

    Generate a one-page interview brief for a prof who replied: their recent papers summarised, likely questions, your talking points, questions to ask.

  • list_pipeline

    status: '' (all) | new | drafted | sent | replied | rejected | silent

  • list_posts
  • list_programs
  • list_projects_in_catalog

    Return the current unified catalog (seed + synced).

  • list_scholarships

    External scholarships from scholarships.yaml, optionally filtered by eligibility region (US, Canada, UK, EU, Asia, Africa, Australia).

  • load_profile

    Load and cache CV + transcript. Call once per session.

  • lor_add
  • lor_mark
  • lor_outstanding
  • mark_status
  • outcome_report

    Response-rate report from your tagged outcomes: totals, by area, by project.

  • outreach_log_view

    Show the last N rows of the outreach xlsx.

  • outreach_mark_followup

    Record that you sent the follow-up nudge, so the prof is never nudged twice.

  • outreach_mark_response

    Tag a prof's reply. outcome: positive | negative | no_response | interview. These tags feed the matcher: projects that earn replies rank up in future runs.

  • outreach_mark_sent
  • publish_articlewrite action
  • run_daily_batchwrite action

    Run the daily outreach: pick n unseen profs in `area` (or today's rotation), match to your strongest project, draft dashless cold emails, log to xlsx, and email the batch to your review inbox.

  • run_program_batchwrite action

    Deadline-driven batch: verify + draft for faculty of one program from programs.yaml instead of arXiv discovery. Use before application deadlines.

  • s2_cache_invalidate

    Selectively purge the Semantic Scholar cache. `query` matches author names and ids (substring). Use everything=True to wipe the whole cache. Use after a prof's S2 record changes (new affiliation, merged record).

  • send_draft_to_mewrite action

    Emails the draft file to your inbox (NOTIFY_TO).

  • set_letterhead

    Set (or clear) the letterhead / company logo used when compiling a Letter of Recommendation to LaTeX.

  • skipped_log_view

    Audit trail of skipped leads: who was rejected, at which stage (identity / faculty-gate / region / dedup / no-papers), and the specific mismatch that failed (e.g. 'identity ambiguous: 2 comparable candidates').

  • sync_catalog

    Extend the project catalog. source in {all, github, huggingface, local}.

  • upcoming_deadlines
  • upcoming_scholarship_deadlines
  • update_articlewrite action

Public scan report

scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it

no findings
  • Code scan40 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 0 days ago15/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 83/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How grad-agent compares

Against every graded AI and agents MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
83/100
higher than 68% of 4,460 AI and agents servers
Tools
38
the typical AI and agents server has 6
Tools that change things
18%
typical: 0%. Fewer write tools means less an agent can break
GitHub stars
4
more than 77% of 2,711 AI and agents servers
Downloads a week
57
more than 47% of 1,538 AI and agents servers with a package

What its tools let an agent do: 26 read · 1 create · 5 change · 1 delete · 2 send or post · 3 run or deploy

Release history: 2 versions in the registry since 2026-07-14, latest 2026-09-25, typically one every 73 days.

Install grad-agent in Claude Code, Cursor or VS Code

claude mcp add grad-agent -- uvx grad-agent
Add to Cursor

What the publisher says

From the grad-agent repository's README, as published. We do not edit it. Read it on GitHub

grad-agent

<!-- mcp-name: io.github.i-ninte/grad-agent -->

An autonomous MCP agent that helps you apply to fully funded MS and PhD programs.

Discover and draft

  • Discovers professors on arXiv in your research areas, or deadline-driven per program (runprogrambatch)
  • Resolves each professor's identity by anchoring on the trigger paper's canonical Semantic Scholar authorId, not the name string — name collisions like "Wei Zhang" are structurally impossible to confuse
  • Refuses to draft when identity cannot be anchored; the specific mismatch (e.g. identity ambiguous: 2 comparable candidates, h=40 vs h=38) is persisted to a skipped sheet for audit
  • Verifies each candidate is actually faculty (h-index and paper-count gates)
  • Filters by region (target_regions: [US, Canada] in your profile; keyword table + homepage TLD + LLM fallback)
  • Scrapes their lab page for a recruiting signal + email address
  • Matches them to your strongest shipped project (tag overlap + TF-IDF semantic layer + learned response-rate bias)
  • Drafts a specific, fact-checked cold email: Claude Haiku writes a hook spanning the prof's recent papers, then a second call verifies every claim against the abstracts and rewrites anything unsupported
  • Scores each draft 1 to 10 for fit, with a one-line reason, so you can triage in seconds
  • Freshness warnings on every draft: cross-checks the S2 affiliation against the prof's live homepage (flags MISMATCH if they may have moved labs) and flags researchers who have not published in 2+ years

Learn and follow through

  • Detects professor replies via read-only IMAP and tags the log automatically
  • Learns from outcomes: projects that earn replies rank up in future matching (outcome_report shows what works)
  • Drafts follow-up nudges for profs silent 10+ days; never nudges the same prof twice
  • Generates an interview prep one-pager when a prof replies: their papers summarised, likely questions, your talking points

Track everything

  • Compiles per-school SOPs to PDF (LaTeX), versioned so no draft is ever overwritten
  • Tracks outreach, LOR requests, program deadlines, and external scholarships (Mastercard, Commonwealth, Fulbright, Rhodes, and more) in xlsx/yaml
  • Emails every draft to your inbox for review; nothing is ever sent to a professor without you

Bundled Claude Code / Claude Desktop skills

Installing grad-agent ships a set of Anthropic Skills you can invoke from any Claude client that supports them (Claude Code, Claude Desktop, MCP-aware IDEs). grad-agent init symlinks them into ~/.claude/skills/ automatically; to (re)install without running init, use grad-agent install-skills (add --force to replace existing entries, or --target to link elsewhere).

  • sop-writing — rules for MS/PhD Statement of Purpose drafting, synthesized from MIT CommLab, MIT CAPD, Berkeley Grad Div, Harvard GSAS, Stanford, and CS-faculty guides. Pairs with the LaTeX SOP compile step.
  • lor-writing — rules for letters of recommendation, including the common case where the applicant ghost-drafts a letter for a recommender to sign. Encodes multi-letter differentiation, recommender realism, HHMI bias hygiene, and a banned-phrase regex sweep. Supports an optional letterhead / company logo via the LORLETTERHEADPATH env var (with LORLETTERHEADWIDTH, default 2.2in) so the LaTeX compile drops your image into the top of the letter — leave it unset for a plain top block the recommender can paste onto their own letterhead. grad-agent init will prompt for the letterhead path interactively; to change it later (or swap letterheads between recommenders) run grad-agent set-letterhead /path/to/image.png --width 2.5in (pass no path to clear it).
  • Cold-email drafter (gradagent/drafters/coldemail.py) — rewritten around PhD outreach best-practices (specific paper anchor, one concrete overlap, no un-anchored superlatives, no "I read your paper" claims).

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

grad-agent: common questions

Is grad-agent MCP server safe?
Mostly: it is graded B (83/100). Read the grad-agent safety report
How do I install grad-agent?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does grad-agent need an API key?
Yes. The registry entry asks for ANTHROPIC_API_KEY, SMTP_PASSWORD, GITHUB_TOKEN, HF_TOKEN.
Is grad-agent maintained?
The last commit was 40 days ago (2026-09-25). The latest release is v0.2.9.
What can I use instead of grad-agent?
Servers from other publishers that do the same job: Alibaba Cloud DashScope — Qwen MCP server, World Model MCP server and NVIDIA Elements MCP server.
How does grad-agent compare with other AI and agents MCP servers?
safety score 83/100 (higher than 68% of 4,460 AI and agents servers); tools 38 (the typical AI and agents server has 6); tools that change things 18% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.

Alternatives to grad-agent

Same job from other publishers: the closest match first, then the best rated.

  • Alibaba Cloud DashScope — Qwen
    Alibaba Cloud DashScope MCP: Qwen chat, embeddings, and model discovery on your own account.
    B
  • World Model MCP
    Persistent 3D/2D spatial world model for AI agents with dynamic velocity and entity tracking.
    A
  • NVIDIA Elements
    NVIDIA Elements UI design system and agent tools for AI/ML, robotics, and autonomous vehicles.
    A