Skip to main content

What an agent gets

https://platform.trylath.com/mcp speaks the Model Context Protocol over streamable HTTP, authenticated with the same Authorization: Bearer <key> header as the REST API. tools/list returns every operation the key is allowed to call, each with its input and result schema; tools/call runs one. Tool names are the operation with dots replaced by underscores — sms.send is sms_send — because MCP names allow [A-Za-z0-9_-] only. A tool the key has no permission for is not listed, so an agent is not offered work it cannot do. For an agent that cannot reach a remote server, npx -y @trylath/cli mcp runs the same tools as a local stdio server, authenticated with LATH_API_KEY or the key lath init stored. It needs Node.js 20 or later.

Connect your agent

Open yours. Every entry is written against that client’s own documentation, linked at the end of it. Put a secret key where <your key> appears — the live.key or test.key that account.signup returned, or one from Developers › Keys in the dashboard. A test key is the safer one to start an agent on.

Coding agents

1

Add the server

Run once in a terminal. Add --scope user to use it in every project.
terminal
2

Check it

Run /mcp inside Claude Code. Lath shows as connected.
Claude Code’s MCP documentation
1

Add the server

Put this in ~/.cursor/mcp.json for every project, or .cursor/mcp.json for this one.
~/.cursor/mcp.json
Cursor’s MCP documentation
1

Add the server

Put this in .vscode/mcp.json. VS Code asks for the key the first time the server starts and keeps it as a secret, so the key never sits in the file.
.vscode/mcp.json
2

Use it

Paste your key when VS Code asks, then use Lath’s tools from Copilot Chat in agent mode.
VS Code’s MCP documentation
1

Add the server

Put this in ~/.codeium/windsurf/mcp_config.json. Windsurf names the URL serverUrl.
~/.codeium/windsurf/mcp_config.json
Windsurf’s MCP documentation
1

Add the server

Put this in Zed’s settings.json, or add it from Settings → AI → MCP Servers → Add Remote Server.
settings.json
Zed’s MCP documentation
1

Open the config

In Cline, open MCP Servers → Configure → Configure MCP Servers.
2

Add the server

cline_mcp_settings.json
Cline’s MCP documentation
1

Add the server

Put this in opencode.json in the project, or in OpenCode’s global config.
opencode.json
OpenCode’s MCP documentation
1

Add the server

Put this in ~/.codex/config.toml. The Codex CLI and IDE extension read the same file.
~/.codex/config.toml
2

Set the key

Codex sends the variable it names as the bearer token, so the key stays out of the file. Set it where Codex starts.
terminal
Codex’s MCP documentation
1

Add the server

Run once in a terminal. It writes .gemini/settings.json, where the URL is httpUrl.
terminal
2

Check it

Run /mcp inside Gemini CLI. Lath is listed with its tools.
Gemini CLI’s MCP documentation
1

Open the config

In the agent panel, open … → MCP Servers → Manage MCP Servers → View raw config.
2

Add the server

mcp_config.json
Antigravity’s MCP documentation
1

Add the server

Run once in a terminal. Add --scope project to keep it in .grok/config.toml with the repo.
terminal
2

Check it

Run grok mcp doctor lath.
Grok Build’s MCP documentation

Desktop and chat apps

Custom Connectors in Claude take OAuth or no authentication, not an API key, so Lath runs as a local server through its CLI instead. It needs Node.js 20 or later.
1

Open the config

In Claude Desktop, open Settings → Developer → Edit Config.
2

Add the server

Claude starts the Lath CLI as a local server with your key in its environment.
claude_desktop_config.json
3

Restart Claude

Quit and reopen Claude Desktop so it starts the server.
Claude Desktop’s MCP documentation
ChatGPT’s developer mode connects MCP servers with OAuth or no authentication, and has no way to send an API key, so it can’t connect to Lath. Codex, from the same company, can. Or paste the agent prompt into a chat and let ChatGPT write the REST calls for your app.
ChatGPT’s MCP documentation

App builders

This gives Lovable’s agent Lath while it builds. The app it publishes calls Lath’s REST API itself, with the key kept on the server.
1

Open Connectors

In Lovable, open Connectors and add a new MCP server.
2

Paste the URL

3

Add your key

Choose Bearer token as the authentication and paste your key.
Lovable’s MCP documentation
1

Open Integrations

In your Replit App, open the Integrations pane and add a custom MCP server.
2

Paste the URL

3

Add the header

Add a header named Authorization with the value Bearer <your key>, your key in place of <your key>.
Replit Agent’s MCP documentation
1

Open MCPs

In v0, open the + menu in the prompt form and choose MCPs.
2

Paste the URL

3

Add your key

Choose Bearer Token as the authentication and paste your key.
v0’s MCP documentation
1

Open Connectors

In Bolt, open Connectors (MCP) and choose Custom MCP server.
2

Paste the URL

Leave the transport on HTTP.
3

Add your key

Choose API key as the authentication and paste your key.
Bolt’s MCP documentation

Provision without a human

account.signup needs no key, so an agent can create the account itself and act with the key it returns. Ask the person for their email address rather than inventing one: the owner seat is theirs, and the link that activates it goes to that address. developers.agent.prompt returns paste-in instructions for any agent — how to connect, and for a client that cannot, every operation with its fields and this environment’s current state.

What to report back

Read the reply before saying a message was sent. status: "queued" means it was accepted for delivery. status: "suppressed" with a suppressed object means the recipient may not be messaged, and it will never send. A blocked object beside queued on sms.send means the environment cannot text anybody yet: the message is stored and sends once that clears. Every refusal carries fix, naming the next step — on a 402, the operation that resolves it. Prefer acting on fix over guessing, and branch on code, never on message.
Last modified on September 23, 2026