Reference Material
Non-normative examples: a conformant server manifest and a representative tool schema, to anchor the prose in concrete shapes.
7.1 Example discovery response
Base MCP as of the 2026-07-28 revision is stateless: there is no initialize / initialized
handshake and no Mcp-Session-Id. A client instead calls the server/discover RPC and carries a
protocolVersion per request. A conformant AutomotiveMCP server advertises this profile through
the Extensions framework that revision formalized: it declares the io.automotivemcp/profile
extension in its discovery response, naming the profile version, the domains it supports, and the
conformance level per domain. This example is illustrative and non-normative.
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2026-07-28",
"serverInfo": {
"name": "Example DMS MCP Adapter",
"vendor": "example-dms",
"version": "1.4.0"
},
"capabilities": {
"tools": { "listChanged": true },
"resources": { "subscribe": true, "listChanged": true }
},
"extensions": {
"io.automotivemcp/profile": {
"specVersion": "0.1",
"domains": {
"inventory": { "level": 2 },
"leads": { "level": 3 },
"service": { "level": 2 },
"deals": { "level": 1 },
"signals": { "level": 1 },
"consent": { "level": 2 }
}
}
}
}
}The authorization profile in §6 rides on base MCP's OAuth 2.1 layer; scopes
follow the amcp:<domain>:<read|write> pattern (for example amcp:inventory:read,
amcp:consent:write). Because discovery is per-request and cacheable, a server MAY return ttlMs
and cacheScope on list results so agents cache tool and resource listings rather than re-fetching
them; Conformance §2.5 describes how this profile uses that native caching for
freshness rather than defining a parallel mechanism.
7.2 Example tool schema
A representative tool definition. Inputs and outputs are JSON Schema; the error contract follows Core Concepts §3.4.
{
"name": "service.book_appointment",
"description": "Book a service appointment for a customer vehicle.",
"input_schema": {
"type": "object",
"required": ["vehicle_id", "start", "service_codes"],
"properties": {
"vehicle_id": { "type": "string" },
"start": { "type": "string", "format": "date-time" },
"service_codes": { "type": "array", "items": { "type": "string" } },
"advisor_id": { "type": "string" }
}
},
"output_schema": {
"type": "object",
"required": ["appointment_id", "status"],
"properties": {
"appointment_id": { "type": "string" },
"status": { "type": "string", "enum": ["booked", "waitlisted"] },
"start": { "type": "string", "format": "date-time" }
}
}
}7.3 Example resource
{
"id": "veh_8Kd02p",
"type": "vehicle",
"vin": "1HGCM82633A004352",
"condition": "used",
"year": 2021,
"make": "Toyota",
"model": "RAV4",
"trim": "XLE",
"mileage": { "value": 38120, "unit": "mi" },
"price": { "amount": 2899900, "currency": "USD" },
"status": "available"
}7.4 Reference implementation
A reference server and a conformance test suite are planned to accompany ratification, so that "conformant" is something a vendor can prove, not just claim. Releases are announced on the Updates page as the council publishes them.