four-leaf
Turn your AI assistant into a job search coach: live search across 140,000+ postings, resume tailoring, and interview prep.
What it can do
- List Roles: List the job roles Four-Leaf has interview intelligence for. Returns role id, display name, and short description.
- Get Role Intelligence: Get structured interview intelligence for a role: typical interview pipeline, experience-level calibration, question categories, 5-dimension scoring rubric, resume + cover-lette
- Get Interview Questions: Get interview questions from the Four-Leaf question bank, filtered by role and optionally by difficulty or question type. Returns question text, context, a coaching tip, and t
What data it sees
Do you need an account
No: the server works without sign-in
Turn your AI assistant into a job search coach: live search across 140,000+ postings, resume tailoring, and interview prep.
How to connect
How to connect four-leaf to Claude
The server address to paste into Claude settings:
https://four-leaf--frank-e28y.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect four-leaf to ChatGPT
The server address to paste into ChatGPT settings:
https://four-leaf--frank-e28y.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect four-leaf to Cursor
The server address to paste into Cursor settings:
https://four-leaf--frank-e28y.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (15)
Raw names from tools/list. Only developers need these.
| list_roles | List the job roles Four-Leaf has interview intelligence for. Returns role id, display name, and short description. |
| get_role_intelligence | Get structured interview intelligence for a role: typical interview pipeline, experience-level calibration, question categories, 5-dimension scoring rubric, resume + cover-letter guidance. |
| get_interview_questions | Get interview questions from the Four-Leaf question bank, filtered by role and optionally by difficulty or question type. Returns question text, context, a coaching tip, and the key points a strong answer covers. No sample answers. Free and unmetered. Up to 25 questions per call. |
| search_jobs | Natural-language job search over Four-Leaf's corpus of 140,000+ active listings scraped nightly from company career sites on Workday, Greenhouse, Ashby, SmartRecruiters, Lever, and Eightfold. Returns up to 10 results with id, title, company, location, posted date, salary if the posting publishes one, a 300-character snippet, and a direct apply URL. get_job expands one result to the full posting by id; save_application saves one to the tracker by id. Free accounts and free trials are capped at 30 searches per day, a budget shared with job search on four-leaf.ai. A paid subscription is uncapped. |
| generate_practice_questions | Generate fresh practice interview questions on demand for a role, question type, and difficulty. Returns 1-10 questions tailored to the role and, optionally, the target company, each with a short coaching tip and the key points a strong answer covers. No sample answers. score_answer scores a typed answer to any of them against the same rubric. Free accounts and free trials are capped at 20 generations per day. A paid subscription is uncapped. |
| match_score | Score how well a resume matches a job description. Returns a 0-100 overall score plus skills, experience, and role-alignment breakdowns, matched skills, and missing required skills. The `resume` argument is optional and defaults to the user's saved Four-Leaf master resume. `jobDescription` must be the text of the posting. This tool does not fetch URLs and rejects a bare URL. Free accounts and free trials are capped at 20 scores per day. A paid subscription is uncapped. |
| explain_interview_format | What to expect in interviews for a role and seniority, how to win, and red flags to avoid. The interview pipeline (rounds, durations, formats, focus) comes from Four-Leaf's role intelligence; the three prose sections are written by a model from that pipeline and the role's scoring dimensions. An optional company flavors the prose from public knowledge, and the response says so with companyDataAvailable: false, because Four-Leaf holds no company-specific interview data. Free and unmetered. |
| start_voice_mock_interview | Returns a link to Four-Leaf's voice mock interview setup page, pre-filled with the role and experience level, and with the round when that role offers it. The response says whether the round was pre-selected and lists the rounds the role does offer, because a case round has no practice stage and not every role has a technical one. No session is created by this tool. The practice itself runs on the page, with spoken adaptive follow-ups and feedback scored against a 5-dimension rubric. Requires Four-Leaf paid access, which a live free trial also grants. Callers without it get an upgrade message and a pricing link instead. |
| tailor_resume | Returns a link to Four-Leaf's Tailor Resume page for the user's master resume against a specific job description (AI rewrite per bullet, ATS keyword matching, side-by-side compare). When jobDescription is supplied it is stored in a single-use, 15-minute stash whose id is in the link, so the page opens with it filled in. match_score assesses fit against the same job description on a free account. Requires Four-Leaf paid access, which a live free trial also grants. Callers without it get an upgrade message and a pricing link instead. |
| comp_coach | Compensation negotiation analysis for a specific job offer the user already has (a base salary at minimum). Takes the offer's components, the user's current comp, and up to 10 competing offers, and returns total-comp math for year one and year four, a market-percentile estimate, component-by-component analysis, red flags, a counter strategy with specific talking points, and clarifying questions to ask before signing. The market percentile is a model estimate from public benchmarks, not live data, and the response's caveat says so. comp_benchmarks answers a market-rate question with no offer in hand. Free accounts and free trials are capped at 20 analyses per day. A paid subscription is uncapped. |
| comp_benchmarks | Market salary band for a role, grounded in a server-side web search, for when the user has no specific offer in hand. Takes a role plus optional level, location, company type (non-profit, startup, big tech, government, enterprise), or company, and returns base-salary bands (broken out by level when none is given), total-comp context, the sources the search found with URLs, a confidence rating, and caveats. When the search finds little, sources may be empty and confidence is low. comp_coach analyses an offer the user already holds. Runs up to three web searches and typically takes 20-45 seconds; a lookup that exceeds 50 seconds is stopped with an error. Free accounts and free trials are capped at 20 lookups per day. A paid subscription is uncapped. |
| score_answer | Rubric-scored feedback on a typed answer to an interview question. Returns a 1-10 score, scores on five dimensions (relevance, specificity, structure, role fit, communication), strengths, improvements, and detailed feedback, calibrated to the role and seniority when given. The same scoring the Four-Leaf practice page applies to typed answers. Nothing is saved. Free accounts and free trials are capped at 20 scorings per day. A paid subscription is uncapped. |
| get_job | The full posting for one job from Four-Leaf's corpus, by the id search_jobs returned: title, company, location, remote flag, salary if published, posted date, apply URL, source, whether it is still active, and the description (first 12,000 characters, with a flag when truncated). Free and unmetered. |
| list_applications | The user's application tracker on four-leaf.ai: company, title, status (saved, applied, interviewing, rejected, withdrawn), posting URL, match score and salary range when set, dates, and a link to each application. Most recently updated first, optionally filtered by status, up to 50. Job descriptions are not included. Free and unmetered. |
| save_application | Saves a job to the user's application tracker on four-leaf.ai, by the id of a search_jobs result or by company and title for a posting found elsewhere, with an optional URL, description, and initial status (saved or applied). A job already in the tracker (same URL, or same company and title) is returned as-is with duplicate: true and nothing is written. Returns the application id and a link to it. Free and unmetered. |