quantjobs
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| add_jobsA | Add jobs to the database (use after a web search for quant roles). Each job dict should include at least |
| search_jobsC | Search the job database. Empty filters are ignored. Returns job records. |
| get_jobB | Get a single job by id, including full description and skills. |
| update_jobC | Update editable fields on a job (e.g. notes, status, comp_min, role_type). |
| star_jobC | Star (save) or unstar a job you like. |
| archive_jobA | Archive a job (sets status='archived'); kept for pattern history. |
| set_statusB | Set a job's status: active | applied | archived | closed. |
| run_queryA | Run a READ-ONLY SQL query against the job DB for ad-hoc pattern analysis. Only a single SELECT/WITH statement is permitted (enforced on a read-only connection). Handy tables: jobs, job_skills(job_id, skill), skills_profile, pending_projects, skill_flags. Example: SELECT skill, COUNT(*) n FROM job_skills GROUP BY skill ORDER BY n DESC |
| analyze_trendsC | Skill demand across tracked jobs; flags in-demand skills you don't have. |
| skills_gap_reportA | Skills you're missing (overall, for a job, or across starred jobs), each with a suggested project + hours to close the gap. |
| list_flagsB | List flagged skills (recommendations to learn). Optionally filter by status. |
| update_flagB | Update a skill flag's status: new | acknowledged | learning | dismissed. |
| add_pending_projectC | Add a project to your backlog (e.g. to earn a missing skill). Always
record an honest time estimate in |
| list_pending_projectsB | List backlog projects (optionally filter: idea|planned|in_progress|done). |
| update_pending_projectA | Update a pending project (e.g. status, priority, est_hours, notes). |
| generate_cvA | Generate a CV PDF — base (job_id=0) or tailored to a job. Tailoring only reorders/selects your real experience; missing skills become pending projects + flags rather than fabricated bullets. stretch_level: conservative | balanced | aggressive. |
| cv_draft_createA | Start a conversational CV draft — base (job_id=0) or tailored to a job. Returns {draft_id, content, missing_skills, suggested_projects}. POLICY: bullets may be reframed and strengthened (the user wants punchy bullets). Any change that goes beyond a literal restatement MUST be logged via cv_reframe_bullet (preferred — it edits and logs atomically) or cv_note_add, classified as reframe | stretch | fabrication, so it lands in cv_notes.md. Never silently invent. Missing skills are returned (and logged as pending projects). |
| cv_draft_getA | Get the current state of a CV draft (id, content, status, timestamps). |
| cv_draft_updateA | Apply a structural edit to a CV draft (summary, ordering, skills) and return content. Use this for the summary, reordering, and skills. For rewording individual experience bullets, prefer cv_reframe_bullet (it logs the change). Patch keys: profile (str summary), contact (dict), experience ([{org, role?, location?, start?, end?, bullets?}] merged by org), skills_rows ([{label, value}] merged by label), education/awards/volunteering (replace the list). If you reword bullets here, also call cv_note_add for anything beyond a literal restatement. |
| cv_draft_renderA | Render the agreed CV draft to a PDF. Returns {tex_path, pdf_path}. |
| cv_draft_listC | List recent CV drafts. |
| cv_reframe_bulletA | Reword (or add) one experience bullet on a draft AND log it to cv_notes.md. This is the right tool for making bullets punchy. |
| cv_note_addA | Log a CV claim change to cv_notes.md (reframe | stretch | fabrication). Use when you reframe/embellish a bullet or summary outside cv_reframe_bullet, so the
audit trail stays complete. |
| cv_notes_getA | Return the CV claim notes (cv_notes.md) — review before interviews. |
| get_profileA | Return your CV profile (contact, experience, skills, etc.) from profile.yaml. |
| add_or_update_skillA | Record that you have/are learning a skill (updates profile + fit scoring). source: have | learning | pending. Use this when you complete a project. |
| run_scrapersA | Run the job-board scrapers (Greenhouse/Lever). Empty = all firms; or pass a source kind ('greenhouse'/'lever') or a firm name. |
| save_searchB | Save a search/pattern so you can re-run it later. |
| list_saved_searchesB | List saved searches/patterns. |
| init_dbA | Create the database and seed your CV profile (safe to call repeatedly). |
| get_settingsA | Get current settings (stretch_level, trend thresholds, location filter). |
| set_settingB | Update a setting, e.g. stretch_level=aggressive or location_filter=New York. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Kav-png/quantjobs'
If you have feedback or need assistance with the MCP directory API, please join our Discord server