Lanes speaks the Model Context Protocol, so agents like Claude Code and Codex can drive it from a chat prompt. Three servers ship, and they reach different things:
- Lanes MCP is hosted by us, and today it powers Lanes Forms. An agent can provision and fill form backends with nothing to install.
- Lanes Desktop MCP is built into the desktop app. It gives an agent your issue board, your sessions, and your connected GitHub and Linear accounts.
- Lanes Link MCP gives an agent you: your own accounts, memory, skills and secrets. You run it, and Lanes cannot see it.
Connect one, two or all three. They register under different names (lanes, lanes-desktop,
lanes-link), so they never collide.
Which one do you want
| Lanes MCP | Lanes Desktop MCP | Lanes Link MCP | |
|---|---|---|---|
| Product | Lanes Forms (for now) | Lanes Desktop | Lanes Link |
| What it reaches | Form backends | Your issue board and sessions | Your own accounts, memory, skills, and secrets |
| Who runs it | Lanes | You, inside the desktop app | You |
| Config name | lanes | lanes-desktop | lanes-link |
| Runs | Hosted at api.lanes.sh | On your machine, inside the desktop app | On your machine, or your own cloud |
| Transport | Streamable HTTP | SSE | Streamable HTTP |
| Endpoint | https://api.lanes.sh/mcp | http://localhost:5353/sse | http://127.0.0.1:7337/mcp by default |
| Auth | Optional workspace key (lfk_...) | None, localhost only | One token per workspace, covering every profile |
| Tools | 5 form tools: create_form, get_form, update_form, generate_form_snippet, submit_form | 30 lanes_* board, session, GitHub, and Linear tools | Connection tools per provider, plus memory, tasks, assets, skills, and the vault |
| Setup | claude mcp add --transport http lanes https://api.lanes.sh/mcp | Toggle on in the desktop app, then one-click connect | bun install -g @lanes-sh/link, then lanes link mcp add |
| Source | Hosted | Ships with the desktop app | Apache-2.0, lanes-sh/link |
| Reference | Agents and MCP | Lanes Desktop MCP | Lanes Link docs |
Not sure which, or would rather not set one up by hand? Hand the table to the agent you already have open. It carries all three and asks you which one you meant.
Lanes MCP: forms with nothing to install
It is hosted, so there is nothing to set up. Add it to your agent and ask it to provision a form
backend or submit to one. Anonymous calls work with no signup, and a workspace key (lfk_...)
unlocks the management tools and provisions forms straight into your workspace.
It is named lanes rather than lanes-forms so it can grow to cover more of Lanes over time.
Agents and MCP has the tools, the setup command, and the Claude Code skill.
Lanes Desktop MCP: hand an agent the board
Turn it on under Settings > Integrations > Lanes MCP, and use Connect Claude Code or Connect Codex. An agent can then read and triage your board, start and resume sessions in worktrees, and reach your connected GitHub and Linear accounts, without you leaving chat.
Everything stays on your machine. There is no key, because the server listens only on localhost.
Once an agent can read session status and the diff it produced, you can stop prompting and start looping.
Lanes Desktop MCP has the full tool list and example prompts.
Lanes Link MCP: hand an agent your context
The other two give an agent access to Lanes. This one gives it access to you: the accounts you have connected, what you know, the procedures you reuse, and the credentials you would rather not paste into a prompt. Lanes does not host it and cannot see it.
It is worth connecting before you link a single account. Memory, tasks, assets, skills and the vault hold your own material rather than an account, so a brand new endpoint is already useful with nothing authorised. Accounts come later, one command each, from a catalogue of over a hundred providers.
Two things shape every call:
- Deny by default, enforced by the runtime rather than asked of the model.
gmail.searchallowed withgmail.senddenied holds whatever the agent was told. - Every call names a profile, so work and personal never depend on remembering which context you are in.
Needs Bun 1.3.11+ and a Lanes sign-in:
$ bun install -g @lanes-sh/link
$ lanes auth login
$ lanes link profile add personal
$ lanes link start
ok serving http://127.0.0.1:7337/mcp
profiles: personalThen lanes link mcp add registers it with every agent you have installed, and lanes link connect gmail opens a browser for the first account. Google connections authorise against the
OAuth client Lanes operates, so there is no client to register, and --own-client uses your own
instead.
The desktop app can do all of it from a settings page: see Lanes Link in the desktop app.
Lanes Link docs, or the quickstart to get running.