Pick your agent. Paste two lines. You're in.
The MCP endpoint is https://mcp.plinth.page. Streamable HTTP, no auth required for sign-in flows. Pick the client you use below.
-
01
Add the MCP server.
One CLI command. Run it in your terminal.
claude mcp add --transport http lanlan https://mcp.plinth.page -
02
Start Claude Code and verify.
Inside the agent, type
/mcp. You should seelanlanlisted as connected./mcp -
03
Build something.
Just talk. Try this for your first session:
Build me a coming-soon page for my friend's bakery. Warm, hand-drawn vibe.
-
01
Add the MCP server to your config.
Open
~/.cursor/mcp.json(or create it) and add thelanlanentry. Project-scoped works too — use.cursor/mcp.jsonin the repo root.{ "mcpServers": { "lanlan": { "url": "https://mcp.plinth.page" } } } -
02
Restart Cursor and verify.
Open Settings → Tools & Integrations → MCP tools. The
lanlanindicator should be green. -
03
Build something.
Open the agent panel. Try this:
Build me a coming-soon page for my friend's bakery. Warm, hand-drawn vibe.
-
01
Add the MCP server to your config.
Open
~/.codex/config.tomland add a[mcp_servers.lanlan]block. Note the snake_case key — Codex usesmcp_servers, notmcpServers.[mcp_servers.lanlan] type = "http" url = "https://mcp.plinth.page" -
02
Restart Codex and verify.
Run
codex mcp list. You should seelanlanlisted.codex mcp list -
03
Build something.
Build me a coming-soon page for my friend's bakery. Warm, hand-drawn vibe.
-
01
Add the MCP server to your config.
Open
~/.gemini/settings.json(or create it) and add thelanlanentry. Note thehttpUrlkey — Gemini uses that, noturl.{ "mcpServers": { "lanlan": { "httpUrl": "https://mcp.plinth.page" } } } -
02
Restart Gemini CLI and verify.
Inside the agent, type
/mcpto list connected servers.lanlanshould be there. -
03
Build something.
Build me a coming-soon page for my friend's bakery. Warm, hand-drawn vibe.
Other clients
The MCP endpoint is https://mcp.plinth.page. Streamable HTTP. The exact config format varies by client — the URL is the same.
- opencode —
opencode mcp add lanlan https://mcp.plinth.page(or via~/.opencode/config.json). - Cline — MCP Servers panel → Advanced MCP Settings. Add an
mcpServers.lanlanentry withurl: "https://mcp.plinth.page". - Continue —
~/.continue/config.yaml. Add anmcpServersentry; same URL. - Zed — Settings → AI → MCP Servers. Add a custom server with the same URL.
If your client speaks Streamable HTTP MCP and isn't here, it'll work the same way. The endpoint is the same. Tell us if anything's missing — hi@lanlan.site.
The doors that just opened.
-
The dashboard
app.plinth.page — analytics, form submissions, snapshots, billing, sharing. Every site you build shows up here.
-
42 tools
Sites, files, content, media, domains, analytics, SEO, sharing, version control, payments. See the inventory.
-
Free to start
The free tier gets you one site, custom domain support, and the full dashboard. Pricing for sharing access, multiple sites, and team workspaces.
The four things that usually go wrong.
The agent doesn't see lanlan after install.
Restart it. Most clients only load MCP config on startup. If you added the server while the agent was running, fully quit and reopen it — not just close the window.
JSON config errors.
Trailing commas, missing quotes, unescaped backslashes on Windows paths. Validate the file in any JSON linter before troubleshooting deeper.
Connection refused or timeouts.
Check https://mcp.plinth.page in a browser — you should see {"status":"ok","service":"plinth-mcp"}. If that works but the agent can't connect, your client probably needs a version that supports Streamable HTTP transport (Cursor v0.48+, Claude Code current, etc.).
Tool count limits.
Some clients cap active tools across all servers (Cursor's around 40). Lanlan exposes 42. If you hit a limit, disable specific tools in the client — you don't need delete_site in your daily loop.
Still stuck? hi@lanlan.site — a real human reads every email, usually within a day.
Now you can build it, hand it off, and walk away.
If the install worked, the rest of the loop is one prompt away.