MCP A2A AP2 Food Delivery & Payments
Enables searching restaurants, retrieving menus, and placing food delivery orders through the A2A protocol integration with DoorDash's agent service.
Enables searching restaurants, retrieving menus, and placing food delivery orders through the A2A protocol integration with Grubhub's agent service.
Provides payment processing and refund capabilities using the AP2 protocol with mandate-based authorization, verifying cryptographically signed user payment approvals before processing transactions.
Enables searching restaurants, retrieving menus, and placing food delivery orders through the A2A protocol integration with UberEats agent service.
Click on "Deploy 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., "@MCP A2A AP2 Food Delivery & Paymentsfind me a pepperoni pizza near me and order it"
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.
mcp-a2a-ap2-im-hungry ππ³
MCP server with A2A protocol (food delivery) + AP2 protocol (payments with Mandates).
Demo

Related MCP server: @striderlabs/mcp-grubhub
Flow

Quick Start
git clone https://github.com/tas1337/mcp-a2a-ap2-im-hungry.git
cd mcp-a2a-ap2-im-hungry
npm startServices:
MCP Server:
http://localhost:8000/mcpRegistry:
http://localhost:8004DoorDash/UberEats/Grubhub:
8001-8003(A2A)Stripe:
http://localhost:8005(AP2)
What's Different from mcp-a2a-im-hungry?
mcp-a2a-im-hungry | This project |
A2A only | A2A + AP2 |
No payments | Stripe payments |
β | Mandates (signed authorization) |
What is AP2?
Problem: AI agents spending money. Who approved it?
AP2 = Payments with Mandates β cryptographically signed proof of user intent.
MANDATE = { userId, maxAmount, expires, signature }Flow (matches real-world AP2):
User asks for cheeseburger π
Your agent searches restaurants via A2A (discovers DoorDash/UberEats/Grubhub agents)
Your agent gets menus and delivery estimates
Your agent decides which restaurant (cheapest/fastest)
User authorizes payment β User's authorization service creates mandate (signed with user's private key)
Your agent requests authorization β Receives mandate from user
Your agent sends payment request WITH mandate to Stripe agent (via A2A)
Stripe agent VERIFIES mandate (signature valid? not expired? amount ok?)
If valid β Stripe processes payment β
Your agent places order with food delivery agent (DoorDash/UberEats/Grubhub via A2A)
π Burger incoming!
Key Point: The agent NEVER creates mandates. User authorization creates them. Agent only uses them.
Project Structure
src/
βββ a2a-client.ts # Calls ANY agent (food or Stripe)
βββ tools.ts # Food tools
βββ ap2-tools.ts # Payment tools (requests user authorization)
βββ user-authorization.ts # User creates mandates (real-world: wallet/auth service)
mock-agents/
βββ food-delivery/ # DoorDash, UberEats, Grubhub
βββ payments/ # Stripe (verifies mandates!)
βββ registry/ # Agent discoveryTools
Tool | Description |
| Search food (A2A) |
| Get menu (A2A) |
| Order food (A2A) |
| Pay via Stripe (AP2 + Mandate) |
| Refund via Stripe (AP2 + Mandate) |
Connect to Cursor
{
"mcpServers": {
"mcp-a2a-ap2-im-hungry": {
"url": "http://localhost:8000/mcp"
}
}
}Resources
This server cannot be deployed
Maintenance
Related MCP Connectors
Stripe-native marketplace where AI agents discover and pay per call for API services.
AI agent infrastructure for discovery, authorization, execution, identity, and signed receipts.
AI food ordering across Canada β 17,000+ restaurants, 89 cities, real UberEats + DoorDash.
Pickup orders at Japanese restaurants for AI agents: find stores, read menus, place orders. No auth.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI agents to search restaurants, browse menus, manage carts, and place orders on DoorDash programmatically. It utilizes a headless browser to interact with DoorDash's GraphQL API and bypass anti-bot protections for the full delivery lifecycle.22341 npm3MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to autonomously order food from Grubhub, including searching restaurants, browsing menus, managing cart, placing orders, and tracking delivery.25 npm1MIT
- AlicenseAqualityCmaintenanceAI agents can order DoorDash food delivery: search restaurants, browse menus, add items to cart, place orders, and track delivery in real-time.938 npm8MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to browse restaurants and menus for free, and place orders with USDC payment via x402.-