resumeai-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tasks | {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
} |
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| auth_statusA | Check the Big Interview login and the remaining daily scan allowance before starting any work. Returns logged_in (false is data, not an error), scans_remaining (null when not shown — never guessed), account_email (null when not visible), checked_at. If logged_in=false: stop and ask the user to run scripts/login.py. Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
| list_scansA | List past scans (newest first) for reuse checks and deletion candidates. limit 1-50 (default 20); pass next_cursor from the previous response as cursor to continue; next_cursor=null means the last page. resume_sha256/jd_sha256 are only known for scans created by this server (null otherwise; such scans are never reused). Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
| start_scanA | Upload a resume + job description and start a scan (uses 1 of the 5 daily scans). Idempotent: if a completed scan exists for the same resume file, job description, scoring guide, job title and company, it is returned with reused=true and no allowance is used. resume_path must be an absolute path to a text-based .pdf/.docx (max 5 MB). Returns scan_id and state (queued/scanning; complete only when reused or already finished). Then poll get_scan_status no more often than every 20 s. Only one scan may be in flight; limit_reached means stop for the day. Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
| get_scan_statusA | Poll a scan's state: queued, scanning, complete, failed (the site explicitly reported failure) or unknown (unreadable — stop and investigate; it is NOT a failure; hint names the saved snapshot). Poll no more often than once every 20 s; give up after 10 minutes (treat as scan_timeout and keep the scan_id). Also returns scans_remaining. Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
| get_scan_feedbackA | Structured feedback for a completed scan: overall medal, the four category badges (readability, credibility, ats_fit, format), each criterion's status (perfect / needs_work / warning) with the site's advice, action items (flagged items are listed even under a Gold badge), and ATS keywords matched/unmatched. partial=true means only the summary badges were readable. A local backup is written. Honesty rule: unmatched keywords are verification candidates, not a shopping list. Only add a keyword to the resume when it is backed by real experience, project, or coursework. Never fabricate skills, metrics, dates, degrees, or employment. A truthful Silver beats a fabricated Gold. Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
| delete_scanA | Delete a scan from My Scans (optional history tidying; NOT a way to get more scans — never plan on allowance_restored). Feedback is always backed up locally first; the deletion is aborted if that fails. Deleting the latest result of the current loop requires confirm=true. Pacing: the server adds random 2-5 s human-like delays between UI actions and runs one tool at a time; never call tools in parallel. On ok=false follow error.hint (PLAN.md §13): auth_expired, site_changed, unknown_state, internal_error and profile_in_use are never retried blindly; otherwise retry at most twice. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 6 tools
Each tool maps to a distinct step in the scan lifecycle: auth_status (auth check), list_scans (history), start_scan (create), get_scan_status (poll), get_scan_feedback (results), delete_scan (remove). The boundaries between polling status, retrieving feedback, and starting a scan are clear and non-overlapping.
Most tools follow a clean verb_noun pattern (list_scans, start_scan, get_scan_status, get_scan_feedback, delete_scan). auth_status deviates slightly by leading with a noun-like token rather than an explicit verb, but it remains readable and consistent with the scan-status naming family.
Six tools is well-scoped for a scan-and-feedback workflow, with each tool earning its place across auth, listing, creation, polling, results, and deletion. Nothing feels padded or redundant.
The surface covers the full lifecycle: authentication, listing, starting, polling, fetching feedback, and deletion. Minor gaps exist (no explicit cancel/abort for an in-flight scan or resume-management operation), but these are workable given the one-scan-in-flight constraint and idempotent start.