# Auto Agent Protocol > Auto Agent Protocol (AAP) is an open A2A v1.0 profile: AI buyer-agents discover a car dealership, browse its real inventory, and submit consented sales leads. 5 skills: dealer.information, inventory.facets, inventory.search, inventory.vehicle, lead.submit. Current version v1.2; sole transport A2A SendMessage over JSON-RPC 2.0; discovery via /.well-known/agent-card.json; extension URI https://autoagentprotocol.org/extensions/aap/v1.2. The entire specification is also available as a single self-contained file at https://autoagentprotocol.org/llms-full.txt. ## Specification - [Introduction](https://autoagentprotocol.org/docs/v1.2/intro): What the Auto Agent Protocol is, what it standardizes, and how to call your first dealer agent in a few minutes. - [Why automotive needs AAP](https://autoagentprotocol.org/docs/v1.2/why): The gap AAP fills against A2A, ACP, MCP, and ADF — and why it is the first automotive-specific A2A profile. - [AAP as an A2A profile](https://autoagentprotocol.org/docs/v1.2/a2a-profile): How AAP slots into A2A's three-layer architecture (data model, abstract operations, protocol bindings) using the typed DataPart pattern. - [Discovery](https://autoagentprotocol.org/docs/v1.2/discovery): A2A agent-card.json with the AAP extension. How a buyer agent discovers a dealer agent and confirms AAP compliance. - [Pricing and FTC compliance](https://autoagentprotocol.org/docs/v1.2/pricing-and-ftc): The three pricing fields (msrp, list_price, price), what each one means, and why price MUST be the FTC-final out-the-door amount. - [Behavior rules](https://autoagentprotocol.org/docs/v1.2/behavior-rules): Normative MUST/SHOULD rules every AAP-compliant dealer agent and buyer agent must follow for inventory accuracy, lead consent, appointment booking, and FTC pricing compliance. - [Errors](https://autoagentprotocol.org/docs/v1.2/errors): The 12 AAP error codes — meaning, suggested JSON-RPC mapping, and retryable defaults. - [Versioning](https://autoagentprotocol.org/docs/v1.2/versioning): SemVer policy. Released versions are immutable, "latest" aliases the highest released version, and each version has its own version-pinned schema URLs. - [Contributing](https://autoagentprotocol.org/docs/v1.2/contributing): How to propose changes to AAP — open an issue first, follow up with a PR. Released versions are frozen; new work lands in the next channel. ## Bindings - [JSON-RPC 2.0 binding](https://autoagentprotocol.org/docs/v1.2/bindings/json-rpc): How to invoke each AAP skill over A2A's JSON-RPC 2.0 binding (Section 9 of the A2A spec), including the full envelope and error mapping. - [HTTP+JSON (REST) binding — removed in v1.1](https://autoagentprotocol.org/docs/v1.2/bindings/rest): The HTTP+JSON (REST) binding was removed in AAP v1.1. AAP is JSON-RPC only; use the JSON-RPC 2.0 binding instead. ## Compatibility - [ADF/XML mapping](https://autoagentprotocol.org/docs/v1.2/compatibility/adf-mapping): Field-by-field mapping from a lead.submit request to ADF/XML so dealer CRMs can ingest AAP leads without changes. - [MCP compatibility](https://autoagentprotocol.org/docs/v1.2/compatibility/mcp): How AAP skills map to Model Context Protocol tools so an LLM client can call a dealer agent through MCP. ## Skills - [Dealer Information](https://autoagentprotocol.org/docs/v1.2/skills/dealer-information): Return the dealership profile — group name, welcome message, and one or more rooftops (locations) with their address, geo, contacts, business hours, timezone, and service capabilities (including tags such as motorcycle_sales / powersports). - [Inventory Facets](https://autoagentprotocol.org/docs/v1.2/skills/inventory-facets): Return searchable inventory facets such as makes, models, years, conditions, body styles/segments, price ranges, mileage ranges, drivetrain, fuel type, statuses, vehicle type, engine-displacement range, and electric facets (electric-range span, DC fast charge, charge port). - [Inventory Search](https://autoagentprotocol.org/docs/v1.2/skills/inventory-search): Search vehicle inventory by query, make, model, trim, year, condition, price, mileage, body style/segment, VIN, stock, features, and availability — across cars, motorcycles, and other vehicle types, including filters such as vehicle type, body/segment, and engine displacement, plus electric filters such as electric range and DC fast charging. - [Vehicle Detail](https://autoagentprotocol.org/docs/v1.2/skills/inventory-vehicle): Return details for a specific car or motorcycle by VIN, stock number, or vehicle_id, including status, pricing disclosure, photos, mileage, trim, features, fuel economy or engine displacement, electric range/battery/charging for BEV and PHEV units, and dealer page URL. - [Submit Lead](https://autoagentprotocol.org/docs/v1.2/skills/lead-submit): Submit a consented lead carrying customer info plus any combination of vehicle of interest, trade-in, and appointment request — a single unified contract that matches how dealerships actually take leads (e.g. test-drive a new car while getting a trade-in appraised in the same visit). ## Machine-readable artifacts - [OpenAPI (JSON-RPC)](https://autoagentprotocol.org/v1.2/openapi-jsonrpc.yaml): OpenAPI 3.1 description of AAP over the JSON-RPC binding - [MCP manifest](https://autoagentprotocol.org/v1.2/mcp.json): AAP skills exposed as MCP tools - [JSON Schemas](https://autoagentprotocol.org/v1.2/schemas/agent-card.schema.json): JSON Schema 2020-12 objects, one file per type under /v1.2/schemas/ - [Agent Card example](https://autoagentprotocol.org/v1.2/examples/agent-card.example.json): sample /.well-known/agent-card.json declaring the aap extension - [Full spec, single file](https://autoagentprotocol.org/llms-full.txt): entire AAP protocol inlined for one-fetch ingestion