# MCP server

`@fivexer/mcp` exposes a Fivexer workspace to Claude Code, Claude Desktop, Cursor, and any other MCP client — 54 tools covering tasks, workers, skills, teams, decisions, learning, and stats.

It is how an agent asks for work to be routed ("file this as a billing task, high priority") and how it reads the result back, without you writing any integration code.

## Hosted connector (no install)

Hosted clients — claude.ai connectors, ChatGPT connectors, anything that cannot spawn a local process — connect over HTTP and authorize with OAuth. Add a custom connector pointing at:

```
https://api.5xer.com/mcp
```

No API key is involved and there is nothing to install. For Claude Code over the same transport:

```
bashclaude mcp add --transport http fivexer https://api.5xer.com/mcp
```

## Local stdio server

For a local process that should use a workspace key directly:

```
bashclaude mcp add fivexer \
  -e FIVEXER_API_KEY=sk_test_... \
  -e FIVEXER_BASE_URL=https://api.5xer.com \
  -- npx -y @fivexer/mcp
```

Both variables are required — the server refuses to start without them rather than guessing an origin. `npx @fivexer/mcp init` walks through it interactively and prints ready-made snippets for Claude Code, Cursor (`~/.cursor/mcp.json`), and Claude Desktop (`claude_desktop_config.json`).

The key you supply is a **workspace** key, so the tools reach everything that plane reaches. Use an `sk_test_` key against a sandbox workspace while you are exploring.

## What the tools cover

| Area | Tools |
| --- | --- |
| Tasks | create, bulk create, get, list, cancel, accept, reject, complete, escalate, unpark, context, comments, attachments |
| Workers | upsert, list, remove, availability, queue, identities, invites, join links |
| Skills | create, list, update, delete, suggest |
| Teams | create, list, delete, members, presence |
| Routing | `suggest_workers`, `list_decisions`, `list_parked_tasks` |
| Learning | status, worker stats, preview weights, apply weights, record feedback, reset |
| Observability | `get_stats`, `get_sla_stats`, `break_metrics`, `check_quota` |

Read-only tools are annotated as such, so a client that distinguishes them can run those without prompting.

## The concepts resource

The server also publishes `fivexer://concepts` — a short mental model of the platform: the task lifecycle, how `routingWeights` and hard vetoes work, wildcard syntax, skill thresholds, and geo limits. Agents that read it before calling tools make far fewer wrong-shaped requests, because the rules that surprise people (weight `0` is a veto, wildcards are suffix-only) are stated up front.

## Related

- [`@fivexer/agent`](/docs/agentic/agent) — the other direction: run an AI agent *as* a worker that receives routed tasks.
- [Auth & keys](/docs/concepts/auth-and-keys) — what a workspace key can reach.
