carter-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@carter-mcpDesign a dashboard with a gauge, slider, and button."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
carter-mcp
An MCP server that lets an AI assistant (e.g. Claude) author and push CAR-TER layouts to a paired iPhone/iPad in real time.
CAR-TER turns a phone or tablet into any control surface you can describe — tabs, grids, and controls (gauges, sliders, joysticks, maps, graphs, live logs, chat, web views…) rendered as native UI and wired to your server over a WebSocket mesh (MeshSocket). This server gives a model the tools to build those layouts conversationally and see them appear on the device as it works.
What it does
Reads CAR-TER's live control documentation so the model builds against the real, current catalog instead of guessing — every control type, its fields, and worked examples.
Edits incrementally — a server-held draft buffer (
begin_edit,add_control,move_control,add_group,preview_buffer,push_buffer…) with validation, snapshots/revert, and grid layout.Pushes live to a device — pair by QR over a zero-config local relay (no account, same Wi-Fi) or a gateway, then push/preview layouts and read control values back.
Wires to your data — probe a running service's traffic, auto-wire controls to it, infer a layout from a schema, generate service/adapter stubs, and lint a draft against real frames.
58 tools in total, exposed over stdio via
FastMCPunder the namecarter.
Related MCP server: iOS Device Control MCP Server
Install
Requires Python 3.11+.
pip install -r requirements.txtThis pulls carterkit (the layout-authoring
engine — catalog, buffer, grid, validation, codegen, theming), which brings
meshsocket transitively, plus the mcp SDK and qrcode.
Run it from an MCP client
The server speaks MCP over stdio. Point your client at server.py:
// e.g. Claude Desktop's claude_desktop_config.json, or a Claude Code MCP entry
{
"mcpServers": {
"carter": {
"command": "python",
"args": ["/absolute/path/to/carter-mcp/server.py"]
}
}
}Then ask the assistant to build you a panel — it will read the control docs, draft a layout, show you a QR to pair your device, and push the layout live.
To run it directly for a smoke test:
python server.py # serves MCP on stdioWhere the knowledge comes from
The MCP is a thin tool layer over the current truth, not a vendored copy of it
(see sources.py):
Control definitions (the catalog + doc prose) are fetched from the website —
carterbeaudoin.net/CAR-TER/catalog.json— cached on disk with a TTL.Authoring demos (example snippets + the builder engine) come from the installed
carterkit; it also checks PyPI so it can tell you to upgrade a stale kit.
The check_sources tool reports drift between the website, the installed
carterkit, and a paired device so mismatches are visible rather than silent.
Configuration
All optional — the defaults target the zero-config local relay:
Env var | Purpose |
| Gateway ws/wss URL for |
| Gateway auth token (else auto-minted via a validator). |
| Dev validator base URL used to auto-mint a token. |
| Port for the in-process local relay (default 8765). |
Tests
python -m pytest -qRelated
carterkit— the Python layout library + client this depends on.meshsocket— the underlying WebSocket mesh transport.CAR-TER docs — the control reference and integration guide.
PROTOCOL.md— the read-back / truthful-push wire contract with the device.
Notes
The sample-layout tools read layouts bundled beside the CAR-TER app repo in the original workspace; in a standalone checkout that set is simply empty — build layouts from the catalog and examples instead.
License
MIT — see LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mariner10/carter-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server