Freehire vs GetMattered
A side-by-side look at the Freehire and GetMattered MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Freehire for workplace & productivity work as a local process; choose GetMattered for workplace & productivity over a hosted endpoint. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Freehire when
- You need dedicated capabilities in the Workplace & Productivity domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: API key required.
- You have the keys it needs:
FREEHIRE_TOKEN, FREEHIRE_API_URL. - You want tools like
whoami, facets, search.
Choose GetMattered when
- You need dedicated capabilities in the Workplace & Productivity domain.
- You prefer a remote HTTP/SSE transport.
- You want tools like
getmattered_get_matches, getmattered_apply, getmattered_get_applications.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Workplace & Productivity | Workplace & Productivity |
| Quality signal | 67/100 · Great | 74/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | API key required | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | FREEHIRE_TOKENFREEHIRE_API_URL | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 17 | 4 |
| Directory activity | 6 views 0 installs 0 upvotes | 4 views 0 installs 1 upvotes |
| Tools | 32 | 40 |
| Full listing | View Freehire | View GetMattered |
Tools & capabilities
Freehire tools 32
whoamiReturn the authenticated freehire user (verifies the API key). Call this to confirm auth before other tools.facetsList the market's filter vocabulary: every facet's live values with a vacancy count each, plus the skills list and numeric ranges. Call this FIRST to discover real values for `search` and `market_fit` — do not invent facet values. A filter key the API does not recognise is ignored rather than refused, so a result wrapped as {data, ignored} counted a broader market than the one asked for — retry with the suggested name before quoting any number from it.searchSearch open jobs by keyword with optional facet filters. Each result carries the job's FULL description as markdown alongside title, company, location and public_slug, plus the total match count — so you can screen a whole result set without calling `job` per hit. Use the returned slug with `job`, `apply`, `save`, etc. Two traps worth knowing. Geography (region/country/city) is ONE OR-group: passing region AND country widens rather than narrows, so drop the region to search a single country. And a filter param the API does not recognize is ignored rather than refused — the search still runs, just broader — so when a result carries an `ignored` list, its `total` answers a wider question than the one asked; retry with the suggested name before reporting the number.market_fitScore a skill list against the live open-vacancy market for a filtered role: headline coverage (% of vacancies listing ≥1 skill), must-have skills held, and the missing skills that unlock the most vacancies. Here `skills` is the MEASURED set, not a filter — use facet params to define the role. One skill probes that skill's demand.jobFetch a single job's full content by slug (title, company, location, posting URL, description).companyFetch a company and its open jobs by company slug.applyMark a job as applied for the authenticated user. Idempotent.saveBookmark a job for later. Idempotent.unsaveRemove a job's bookmark. A no-op if it was not saved.stageSet a job's application stage. The server validates the value; valid stages are applied/screening/responded/interview/offer/accepted/rejected/withdrawn.noteAttach a free-text note to a tracked job (overwrites the existing note).myList the caller's tracked jobs (viewed/saved/applied) with their stage and note. Filter narrows the set.- +20 more on the listing page
GetMattered tools 40
getmattered_get_matchesStart here. List the user's matched jobs, best fit first and mixed across companies, so scores do not fall in strict order. Or read full postings by job_match_ids or job_url. On a new account, follow nextStep. Changes nothing and spends nothing.getmattered_applyApply to one job by job_match_id or job_url, on the employer's own hiring system. mode "auto" submits, "review" holds for approval, and no mode follows the account setting. A sent application cannot be withdrawn. Confirm first unless the user asked.getmattered_get_applicationsList the user's applications and where each stands, or read one by application_id. status "waiting_for_review" is the review queue. employerConfirmed is the only proof an application landed. Changes nothing.getmattered_approve_applicationsSubmit waiting applications to their employers under the user's name. Spends one application each. It cannot be undone. Use only on the user's explicit yes to those applications.getmattered_get_accountRead the signed-in user's account id, display name and sign-in email, plan, token balance, applications left, job preferences and readiness: whether a resume is on file and which form answers are missing. Changes nothing.getmattered_get_profileRead which account this connection is signed in as. Use it to tell connected accounts apart. Changes nothing.getmattered_reject_applicationsSkip applications waiting for review. Nothing is sent and nothing is spent. Use only for applications the user said no to.getmattered_cancel_applicationsStop applications that are queued, being prepared or waiting for review, so they are never submitted. A submitted application cannot be cancelled. Use only when the user asks.getmattered_refine_application_documentsRewrite the tailored resume or cover letter of unsent applications from the user's own words. Nothing is sent. Uses AI credits.getmattered_reprepare_applicationsBuild the documents and form answers of applications again. Nothing is sent. Uses AI credits.getmattered_set_application_stageRecord a stage the user reports on their own tracker. Nothing is sent to the employer.getmattered_set_resumeSet the base resume every application is tailored from, from exactly one source. A new upload uses AI tokens; a saved document does not. A local file path is not a URL. In ChatGPT the user can attach a resume file; pass it as resume_file. It replaces the user's current base resume (the old one stays in their documents), so call it only when the user wants this resume used.- +28 more on the listing page
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Freehire
{
"mcpServers": {
"freehire": {
"command": "npx",
"args": [
"-y",
"freehire-mcp"
],
"env": {
"FREEHIRE_TOKEN": "YOUR_FREEHIRE_TOKEN_HERE",
"FREEHIRE_API_URL": "YOUR_FREEHIRE_API_URL_HERE"
}
}
}
}
GetMattered
{
"mcpServers": {
"getmattered": {
"command": "npx",
"args": [
"-y",
"getmattered-mcp"
]
}
}
}
Frequently asked questions
Freehire is categorized under Workplace & Productivity and uses a local stdio subprocess. GetMattered belongs to Workplace & Productivity and uses a remote HTTP/SSE transport. Pick Freehire for workplace & productivity work and GetMattered for workplace & productivity.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Freehire has no declared pricing — check the project's own site. Auth: api key required. GetMattered has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add freehire and getmattered as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Freehire has a quality signal of 67/100 (Great) with 6 views, 0 installs and 17 GitHub stars. GetMattered has 74/100 (Great) with 4 views, 0 installs and 4 GitHub stars.