Agent Outposts: unofficial directory of brand agent door-state, intent receipts, and change polling.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Get one brand's door-state document from its Outpost: for each of the five intents (menu/browse, prices, inventory, ordering, tracking), the assessed state (open, partner-gated, aggregator-only, or human-only), the sanctioned route if any, its evidence source, and the date it was verified. Brands: amazon, costco, dominos, starbucks, mcdonalds, walmart, target, united, airbnb, chipotle. Free, no API key.
Brand slug: "amazon", "costco", "dominos", "starbucks", "mcdonalds", "walmart", "target", "united", "airbnb", or "chipotle"
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http outposts https://api.agentoutposts.com/mcp
Get one brand's door-state document from its Outpost: for each of the five intents (menu/browse, prices, inventory, ordering, tracking), the assessed state (open, partner-gated, aggregator-only, or human-only), the sanctioned route if any, its evidence source, and the date it was verified. Brands: amazon, costco, dominos, starbucks, mcdonalds, walmart, target, united, airbnb, chipotle. Free, no API key.
| Argument | Type | Description |
|---|---|---|
| brand* | string | Brand slug: "amazon", "costco", "dominos", "starbucks", "mcdonalds", "walmart", "target", "united", "airbnb", or "chipotle" |
{
"type": "object",
"required": [
"brand"
],
"properties": {
"brand": {
"type": "string",
"description": "Brand slug: \"amazon\", \"costco\", \"dominos\", \"starbucks\", \"mcdonalds\", \"walmart\", \"target\", \"united\", \"airbnb\", or \"chipotle\""
}
}
}List the Agent Outposts network: the brands that have an Outpost (a demand registry for brands with no agent door of their own), with each Outpost's status. Free, no API key.
No arguments.
{
"type": "object",
"properties": {}
}Poll a notify token from an intent receipt for door-state changes at a brand's Outpost. Returns your registration (ticket, intent, received-at), the Outpost's current door-state version and summary, whether the door-state has changed since your registration, and the live demand snapshot. In v1 door-states are census-static, so "changed" is false until a re-census bumps the version. Free, no API key.
| Argument | Type | Description |
|---|---|---|
| brand* | string | Brand slug: "amazon", "costco", "dominos", "starbucks", "mcdonalds", "walmart", "target", "united", "airbnb", or "chipotle" |
| token* | string | The notify token from your intent receipt's poll URL |
{
"type": "object",
"required": [
"brand",
"token"
],
"properties": {
"brand": {
"type": "string",
"description": "Brand slug: \"amazon\", \"costco\", \"dominos\", \"starbucks\", \"mcdonalds\", \"walmart\", \"target\", \"united\", \"airbnb\", or \"chipotle\""
},
"token": {
"type": "string",
"description": "The notify token from your intent receipt's poll URL"
}
}
}Register intent at a brand's Outpost: declare what you came to do at a brand whose door is walled for that intent. The declaration is persisted and you receive a receipt: ticket id, queue position for that brand, a live demand snapshot, the door-state summary, alternatives for your intent (same-category brands with open or partner-gated doors), and a notify registration (poll URL or webhook). Receipt status is "intent_recorded" when alternatives exist, otherwise "demand_logged" — the intent joins the aggregate the brand team sees. A ticket is issued only if the intent was persisted; on recording failure the tool returns an error result (recording_unavailable) and no ticket. Rate gate: 100 registrations per caller per day, 5,000 per day service-wide. Free, no API key. Keep the receipt's poll URL private — it identifies your registration.
| Argument | Type | Description |
|---|---|---|
| brand* | string | Brand slug: "amazon", "costco", "dominos", "starbucks", "mcdonalds", "walmart", "target", "united", "airbnb", or "chipotle" |
| detail | string | Optional free text, e.g. the task you were trying to complete (max 500 characters; stored only as provided) |
| intent* | string | What you were trying to do |
| notify | string | How to learn when a re-census changes this Outpost's door-state (default "poll") |
| notify_url | string | Required when notify is "webhook"; must be an https:// URL |
| agent_label | string |
We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 2, 2026.
Takes a password, API key or token as an argument, so the secret passes through the model's context and chat logs.
Fix: Read credentials from the server's own configuration (environment, OAuth) instead of a tool argument.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.
| Optional self-declared agent name (max 80 characters) |
| est_frequency | string | Optional estimated frequency, e.g. "40/day" (max 40 characters) |
{
"type": "object",
"required": [
"brand",
"intent"
],
"properties": {
"brand": {
"type": "string",
"description": "Brand slug: \"amazon\", \"costco\", \"dominos\", \"starbucks\", \"mcdonalds\", \"walmart\", \"target\", \"united\", \"airbnb\", or \"chipotle\""
},
"detail": {
"type": "string",
"description": "Optional free text, e.g. the task you were trying to complete (max 500 characters; stored only as provided)"
},
"intent": {
"enum": [
"menu_browse",
"prices",
"inventory",
"ordering",
"tracking"
],
"type": "string",
"description": "What you were trying to do"
},
"notify": {
"enum": [
"poll",
"webhook"
],
"type": "string",
"description": "How to learn when a re-census changes this Outpost's door-state (default \"poll\")"
},
"notify_url": {
"type": "string",
"description": "Required when notify is \"webhook\"; must be an https:// URL"
},
"agent_label": {
"type": "string",
"description": "Optional self-declared agent name (max 80 characters)"
},
"est_frequency": {
"type": "string",
"description": "Optional estimated frequency, e.g. \"40/day\" (max 40 characters)"
}
}
}