Documentation Index
Fetch the complete documentation index at: https://docs.amps.ai/llms.txt
Use this file to discover all available pages before exploring further.
Coming soon. The Execution MCP is in development and will publish to
@amps-ai/mcp on npm. The package is not yet listed. The patterns in Building agent UIs work against the Documentation MCP and the REST API directly.Distribution
The server will publish as the@amps-ai/mcp npm package. Install with npx, run as a stdio process for local agents (Claude Desktop, Cursor, Windsurf, Continue), or run as a hosted HTTP service for multi-tenant integrations (Vercel AI SDK, custom backends).
Tool surface
Tools generate from the OpenAPI operations. Per resource:list_battery,get_battery,push_batterylist_ev_charger,get_ev_charger,push_ev_chargerlist_hvac,get_hvac,push_hvaclist_solar_inverter,get_solar_inverterlist_vehicle,get_vehicleget_action,cancel_action
wait_for_action(actionId)pollsget_actionuntil terminal state, so the agent does not have to manage its own loop.find_device(query)saves the agent a list-then-filter dance when the user names a device by alias rather than ID.
/schedules ships, so the agent never gets a tool that always fails.
Auth model
Two layers of identity, one outbound API call. The integrator (you, the developer wiring the agent) holds the Amps API key. That key sits in the MCP server’s environment, never in the model’s context. Per-request, your application forwards the end-user’s identifier to the MCP server in a header. The MCP server proxies both to the Amps API: the API key asx-api-key, the user identity as x-user-id. Amps resolves the user against the integrator’s account and scopes the call accordingly.
This means the model never sees a credential. The integrator’s API key stays server-side. End-users authenticate to your application; your application authenticates to Amps.
For a hosted multi-tenant deployment, run the MCP server over streamable HTTP. One process serves every user. Per-request headers carry per-user identity. For a single-user local agent, run over stdio with a single user identifier baked into env.
Tool naming hygiene
Operation IDs on the Amps API are designed to read cleanly when generated as MCP tools.pushBattery becomes the push_battery tool. cancelAction becomes cancel_action. The agent thinks in canonical verbs that match the docs.
Cross-link to the patterns
The Execution MCP makes the patterns concrete. Each tool result is a canonical envelope, so:- A
get_batteryresult feeds straight into a<DeviceStateCard>component (see Dynamic UI rendering) - A
push_battery422 returns a capability snapshot the agent can re-derive from (see Self-describing responses) - A
push_batteryorcancel_actioncall gates behind a confirmation primitive (see Confirmation gates)
What next
Documentation MCP
The companion surface for grounding an agent in the docs corpus. Live.
Self-describing responses
The contract the Execution MCP exposes to the model.
Confirmation gates
Why destructive tool calls do not free-fire from the model.
Canonical actions
The action shape every push tool will accept.