Layout

Layout in Claude Code

Claude Code speaks MCP, so Layout works in it the same way it works in any other assistant: one command to add the connector, one sign in, and then you can order food without leaving the terminal.

Building Layout into a product?

This page connects your own Layout account, and its orders are real. To build Layout into your product, use the developer platform instead: sandbox keys, the CLI, and a guide for coding agents.

Add it

claude mcp add --transport http layout https://mcp.layout.link

That registers Layout for the current project. To have it everywhere instead:

claude mcp add --transport http -s user layout https://mcp.layout.link

There is a third scope, -s project, which writes the server into a .mcp.json your teammates share. That is fine for Layout: the file records the address, never a credential, and every person still signs in as themselves and spends from their own account.

Sign in

  1. Start the connection

    Run /mcp inside Claude Code and pick Layout, or run claude mcp login layout from the shell.

  2. Approve it in the browser

    A Layout page opens. Sign in with your phone, then read the one approval screen. It names the single permission the connection gets, order, which covers ordering and your own saved food preferences.

  3. Check it is connected

    claude mcp list shows Layout with a health check. claude mcp get layout shows the detail.

  4. Order something

    Back in the session: "order me a large cold brew from the Dutch Bros on Mangrove." Layout finds the restaurant, reads its live menu, builds the cart and comes back with a total.

This spends real money

Claude Code is a terminal, but Layout is not a sandbox. A confirmed order is a real order at a real restaurant, paid with a real card, and it is final once placed. Nothing is charged until you confirm a total Layout shows you. See confirming and paying.

What you need first

  • A Layout account with a card saved, from account.layout.link. Anyone can sign up with a phone number. See your Layout account.
  • Nothing else. No API key, no client id, no secret. The connector registers itself.

How the connection works

Layout is a Streamable HTTP MCP server at the root of mcp.layout.link. An unauthenticated call gets a 401 carrying a WWW-Authenticate challenge, which points at the protected resource metadata, which names the authorization server. Claude Code registers itself dynamically, runs authorization code with PKCE, and stores the token it gets back. There is no shared secret anywhere in that flow.

To see it for yourself:

curl -s https://mcp.layout.link/.well-known/oauth-protected-resource
curl -s https://api.layout.link/.well-known/oauth-authorization-server

The full picture is in how the connector works, and the tools the connection exposes are listed in tools Layout exposes.

Removing it

claude mcp logout layout      # forget the credential, keep the server configured
claude mcp remove layout      # remove it entirely

Removing the connector does not close your account or delete your order history. To cut it off from Layout's side as well, see revoking access.

When it will not connect

  • It asks you to sign in again in a loop. The stored credential is stale. Run claude mcp logout layout, then claude mcp login layout.
  • A build takes a few minutes. That is normal at a restaurant Layout has not ordered from before, not a hang. Layout returns a tracking link while it works, and Claude can check on the result.

Anything else: getting help, and say it was Claude Code.

Updated October 21, 2026