Let your editor’s AI agent talk to Frontic directly. Frontic runs two MCP servers your agent can connect to — the project MCP for reading and writing your Frontic project, and the docs MCP for querying Frontic documentation. Any MCP-compatible client works: Claude Code, Claude Desktop, Cursor, and any other editor that speaks the protocol. With the project MCP connected, your coding agent can understand and control the project alongside the code it’s writing:Documentation Index
Fetch the complete documentation index at: https://docs.frontic.com/llms.txt
Use this file to discover all available pages before exploring further.
- explore project configuration — domains, scopes, regions, locales — to see what it’s building against
- create, update, and delete blocks, listings, and pages
- create and manage Data Storages, including their schema fields
- search Data Storage records and Data Feed records to see real data
- read and edit Data Sync configurations, and preview Value Composer transforms on sample records to debug mappings without round-tripping to the admin app
- on Plus plans, read and author Context Base documents (Skills, Rules, Commands)
The two MCP servers
Project MCP
https://mcp.frontic.com/mcp — the full project surface. Lets your agent
read and write blocks, listings, pages, inspect Data Storages,
preview Value Composer output, and so on. OAuth-authenticated,
bound to your Frontic account.Docs MCP
https://docs.frontic.com/mcp — read-only access to Frontic
documentation. Your agent can search the docs and pull in the
relevant page when it needs to answer a how-to question. No
authentication required.Quick setup with the CLI
The fastest way to wire up either or both MCP servers is thefrontic mcp init command. It detects your client, writes the right config to the right place, and asks whether you want both servers, tools only, or docs only:


cursor, claude (Claude Code), windsurf, vscode, codex. The command merges with any existing MCP config rather than overwriting it.
After setup, restart your client. On the first call to the project MCP, you’ll be prompted to authenticate via OAuth. The docs MCP needs no auth.


Manual configuration
If you’d rather write the config yourself, here’s the JSON to add:Client-specific configuration
Claude Code
Claude Code
.mcp.json at your project root — Claude Code reads project
MCP config from this file:/mcp command to confirm both
servers are connected. The first project MCP call triggers the
OAuth flow.

Claude Desktop
Claude Desktop
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Cursor
Cursor
.cursor/mcp.json in your project
root, or Cursor’s global settings:Windsurf, VS Code, Codex
Windsurf, VS Code, Codex
frontic mcp init supports these clients directly. Config paths:| Client | Config path |
|---|---|
| Windsurf | ~/.codeium/windsurf/mcp_config.json (global) |
| VS Code | .vscode/mcp.json (project-local) |
| Codex | ~/.codex/config.toml (global, TOML format) |
frontic mcp init --client <windsurf|vscode|codex> to write the
config, or drop the JSON above into the file yourself. For Codex,
the TOML equivalent goes in the [mcp_servers] section.Other MCP-compatible clients
Other MCP-compatible clients
First things to try
Have your agent list your projects and inspect the main one
Ask the agent to map out your Data Storages and their fields
Let the agent build a Search Listing for products with filters and sorting
Look up how Request Context resolves from a domain via the docs MCP
Have the agent plan and set up a basic storefront end to end
Permissions and security
The project MCP authenticates via OAuth against your Frontic account. The token the agent uses carries your account’s permissions — whatever role you have on a project in the admin app, the MCP can do on that project, and nothing more. If you’re a Viewer, the agent can read but not write. If you’re an Admin, the agent can do everything you can do. A few consequences worth knowing:- The agent picks a project explicitly. Most tools take a project ID as a parameter. A typical first call is
list_projects; after that, ask your agent to switch projects whenever you need it to work against a different one. - Per-call approvals are your MCP client’s job. Claude Code, Cursor, and other clients have their own tool-use approval UI — that’s where you approve or reject individual calls before they hit Frontic. Frontic doesn’t inject anything on top of that; the permission layer is the OAuth token.
Combining MCP with the CLI
MCP is the agent-facing surface. The Frontic CLI is the developer-facing surface. They compose naturally:Agent creates stack resources via MCP
develop immediately.You regenerate the Client SDK via CLI
frontic generate from your terminal. The CLI pulls the
current project API and writes a typed client into .frontic/.Agent writes frontend code against the SDK
Review and type-check
Preview and ship
Troubleshooting
OAuth didn't trigger on first connect
OAuth didn't trigger on first connect
frontic
entry from your MCP config, reload the client, add it back, and
try again. OAuth should prompt the first time a tool is called.My agent sees the wrong project
My agent sees the wrong project
list my Frontic projects and switch explicitly
to the one you want — most tools take a project ID per call.A call failed with a permission error
A call failed with a permission error