Instacart for AI agents
Instacart's developer platform lets apps create shoppable recipes and lists and discover nearby retailers for grocery delivery. Online sellers rely on it to keep this part of the storefront running smoothly. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Instacart.
Turn a recipe into a shopping list
Create a shoppable recipe page from a list of ingredients so a user can order them on Instacart.
Find nearby retailers
Look up retailers near a user's address that support Instacart delivery.
Build a shopping list page
Create a shopping list page from items mentioned in a meal plan for one-click ordering.
4 Instacart actions, graded by risk.
Every Instacart action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
1Look things up. Allowed by default.
- instacart.get_nearby_retailersGet Nearby Retailers
write
3Create and change things. Allow, or ask the user first.
- instacart.create_recipe_pageCreate Recipe Page
- instacart.create_shopping_list_pageCreate Shopping List Page
- instacart.create_instacart_recipe_linkCreate Instacart Recipe Link
destructive
0Delete, cancel or archive. Ask first, or deny outright.
- No destructive actions.
Instacart in three steps.
- 01Your users connect InstacartThey add their Instacart no auth on Arc0 Connect, under your brand. It goes straight into the vault.
- 02You set the rulesReads run, and writes like “create Recipe Page” can wait for the user to approve.
- 03Any agent can actYour agent calls Instacart through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('instacart', { read: 'allow', write: 'ask', // create_recipe_page destructive: 'deny', }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Instacart connects.
Instacart needs no credentials. Arc0 still applies your policies and records every call, so public tools get the same controls as private ones.
The same Instacart connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- No auth
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Instacart from any agent.
Instacart and Arc0, answered.
Can I use Instacart with Claude, ChatGPT or Cursor?
Yes. Connect Instacart to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Instacart actions you allow.
How do users connect Instacart?
Instacart needs no credentials. Arc0 still applies your policies and records every call, so public tools get the same controls as private ones.
Which Instacart actions can my agent take?
4 in total: 1 read, 3 write and 0 destructive, such as “create Recipe Page”. Your policies decide which of them each agent may call.
Can I make my agent read-only in Instacart?
Yes. Allow read actions and deny writes in the Instacart policy. Your agent can still look things up, and any write it attempts is blocked and logged.
Can my own backend call Instacart too?
Yes. The same Instacart connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Instacart into your agent.
Your users connect Instacart once, under your brand. Your agent gets 4 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan