Skip to main content
Glama
avivancos
by avivancos
README.md
# mcpfor.work

Open-source, MCP-first job-search copilot — any sector, any country. Self-hostable for free; hosted at a flat $5/mo.

**Status: pre-alpha.** Self-host works end-to-end (profile → hunt → briefs →
supervised apply); hosted is not launched yet.

## Quickstart (self-host, zero account)

```bash
uvx --from mcpforwork mcpforwork init     # creates ~/.mcpforwork/mcpforwork.db
```

Add the connector to Claude Code / Desktop (`.mcp.json`):

```json
{ "mcpServers": { "mcpforwork": { "command": "uvx",
    "args": ["--from", "mcpforwork", "mcpforwork-mcp"] } } }
```

Then, in your client: `/setup` (build your profile, < 3 min) → `/hunt`
(browser-verified job-portal searches; UK, Spain, US, DE + remote boards) →
`/review` → `/apply` (honest drafts + coverage check; **you** click Submit —
the copilot never auto-submits). Zero server-side LLM calls, ever.

## What makes it different

- **The LLM is the client.** All intelligence runs inside your own Claude or ChatGPT/Codex subscription connected to this MCP server. We never make server-side LLM calls, so the hosted plan is infrastructure, not token resale.
- **Graduated autonomy, consent-based.** Default is supervised: the copilot prepares, you review and submit. Autopilot is explicit opt-in, policy-governed, and only ever runs in your own browser session.
- **Open-core.** The full product self-hosts on SQLite with no account. Hosted adds convenience: remote MCP connector, web dashboard, sync, backups.
- **Never fabricate.** Generation briefs carry a facts inventory — drafts may only claim what your profile proves.
- **Sector- and country-agnostic by data.** Job-site knowledge ships as versioned, community-contributable packs, not code releases.
- **You own your data.** Export and delete built in.

## Architecture

Pragmatic hexagonal (ports & adapters) over a modular monolith. The full product
specification lives in [docs/PRODUCT_PLAN.md](docs/PRODUCT_PLAN.md); contributor
rules in [AGENTS.md](AGENTS.md).

## Development

```bash
uv sync
uv run pytest
uv run ruff format --check . && uv run ruff check .
uv run lint-imports
```

## License

Apache-2.0

TDQS

B3.2/5.0

Scored across 41 tools

Disambiguation4/5

Most tools have clearly distinct purposes, but a few pairs like hunt_plan/source_playbook and parse_cv/preview_url_import could be confused without careful reading. However, the detailed descriptions effectively disambiguate them, and the application workflow tools each have specific roles.

Naming Consistency4/5

The majority of tools follow a verb_noun pattern (e.g., get_profile, create_profile, submit_asset), but some read-only data tools use noun phrases (e.g., pipeline_stats, autopilot_queue, ats_coverage_check, profile_gaps) and a few use less standard verbs (preview, hunt, check, request). Overall, the naming is readable and mostly consistent.

Tool Count2/5

With 41 tools, the surface is very large and exceeds the threshold for 'too many'. The domain is broad, but the granularity exposes many fine-grained workflow steps (e.g., confirm_submitted, record_outcome) that could be grouped into higher-level tools, making the set overwhelming for agents.

Completeness4/5

The tool surface covers the full lifecycle: profile creation/import, job hunting, match management, drafting, application execution, and GDPR data rights. Minor gaps exist, such as no dedicated tool to get an application's current status and no update/delete for achievements, but core workflows are well covered.

Maintenance

ActivitySlowing
ResponsivenessNo issues