关于 instacart
面向使用 AI Agent 进行 Instacart 采购的 MCP 服务,可搜索商品、管理购物车并下单。它通过浏览器自动化操作 Instacart,并保存加密的登录会话以便重启后继续使用。
主要功能
- 01按名称或类别搜索商品
- 02浏览商店与商品库存
- 03管理购物车和特殊要求
- 04选择配送时间并下单
- 05跟踪订单状态
- 06保存登录会话与常购商品
适用场景
- 01按商品清单准备 Instacart 购物车
- 02安排指定时间的杂货配送
- 03查看已下订单的实时状态
MCP 相关
该 MCP 服务向客户端开放商品搜索、购物车管理、下单和订单跟踪工具。它通过浏览器自动化与 Instacart 交互。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
11收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
@striderlabs/mcp-instacart
通过 AI Agent 使用 Instacart 订购杂货
隶属于 Strider Labs —— 为个人 AI Agent 提供操作执行能力。
2 分钟快速开始
Claude Desktop 用户
- 将以下内容添加到 Claude Desktop 配置中:
{
"mcpServers": {
"instacart": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-instacart"]
}
}
}
- 重启 Claude。
- 告诉 Claude:“明天早上配送我平时买的杂货”
现在,你的 Agent 就可以下单了。就这么简单。
安装(NPM)
npm install @striderlabs/mcp-instacart
也可以直接使用 npx:
npx @striderlabs/mcp-instacart
功能
- 🛒 按名称或类别搜索商品
- 📦 浏览商店和商品库存情况
- 🏪 添加到购物车并设置数量和特殊要求
- 💳 下单并选择配送时间
- 📍 追踪订单并查看实时状态
- 🔐 持久化会话——重启后仍保持登录状态
- 🔄 自动 MFA——处理多重身份验证
- 📱 按用户保存凭据——加密的会话存储
- ⭐ 已保存商品——更快地订购常买商品
已测试且兼容
| 组件 | 版本 | 状态 |
|---|---|---|
| MCP SDK | ^1.0.0 | ✅ |
| Node.js | 18+ | ✅ |
| Claude Desktop | 最新版 | ✅ |
| Claude(API) | claude-3.5-sonnet+ | ✅ |
| Anthropic SDK | ^0.20+ | ✅ |
指标
- 每周下载量: 271(2026 年 4 月 10 日至 17 日)——领先的杂货连接器(增长 +330%)
- 状态: ✅ 已在生产环境上线
- 可靠性: 任务完成率超过 85%
- 收录平台: npm、mcpservers.org、ClawHub、PulseMCP、Glama、LobeHub
其他平台
- npm: npmjs.com/@striderlabs/mcp-instacart
- Claude 插件: 在 Claude 中搜索 “Strider Labs”
- mcpservers.org: Strider Labs Instacart
- 完整的 Strider Labs: github.com/striderlabsdev/striderlabs
工作原理
面向 Agent
你的 Agent 可以使用以下功能:
// Search for products
products = search_products({
query: "organic milk",
location: "San Francisco, CA"
})
// Browse a store's offerings
store_products = get_store_products({
store_id: "whole_foods_sf",
category: "Dairy"
})
// Add to cart
add_to_cart({
product_id: "organic_milk_gallon",
quantity: 2,
special_instructions: "Cold stock, please"
})
// Place an order
order = place_order({
delivery_time: "tomorrow morning",
delivery_address: "123 Main St, San Francisco, CA",
special_instructions: "Ring the doorbell twice"
})
// Track delivery
status = track_order({ order_id: order.order_id })
会话管理
- 每位用户的凭据均经过加密并持久保存
- 自动刷新 OAuth 令牌
- 处理 MFA(短信/电子邮件)
- Agent 重启后会话仍然有效
可靠性
- 任务完成率超过 85%
- 自动检测 UI 变更(Instacart 更新时同步更新连接器)
- 失败时提供备用路径
- 全天候监控和告警
身份验证
MCP 服务使用持久化浏览器配置文件(~/.strider/instacart/browser-profile),因此登录会话会自动保留,不受服务重启影响。
首次登录
- 在 MCP 服务配置中设置
INSTACART_HEADLESS=false,以显示浏览器窗口:
{
"mcpServers": {
"instacart": {
"command": "npx",
"args": ["-y", "@striderlabs/mcp-instacart"],
"env": { "INSTACART_HEADLESS": "false" }
}
}
}
- 重启 Claude / MCP 客户端。
- 让 Claude 运行
instacart_login——此时会打开一个真实的浏览器窗口。 - 在该窗口中登录 Instacart。
- 运行
instacart_status确认身份验证状态。 - 移除
INSTACART_HEADLESS(或将其设回true)并重启——已保存的配置文件会让你继续保持登录状态。
登录检测原理
系统通过导航到 /account 并确认页面正常加载,且未重定向至 /login 或 /authentication,来验证身份验证状态(肯定式检测)。这种方式比检查是否没有“登录”按钮更加可靠。
配置
环境变量
# Show browser window (required for first-time login)
INSTACART_HEADLESS=false # default: true (headless)
自托管
# Clone the repo
git clone https://github.com/striderlabsdev/mcp-instacart
cd mcp-instacart
# Install dependencies
npm install
# Start the server
npm start
# Your agent can now connect to localhost:3000
架构
我们如何连接
此连接器使用浏览器自动化(Playwright)与 Instacart 交互,因为 Instacart 没有公开 API。以下是这种方式安全可靠的原因:
- 由用户控制: 你的 Agent 只能访问你自己的 Instacart 账户
- 基于会话: 我们安全地存储你的登录会话,而非密码
- 感知变更: 我们会检测 Instacart UI 的变化并立即发出提醒
- 指纹识别: 我们使用逼真的浏览器配置文件来避免被检测为机器人
- 速率限制: 我们通过适当的延迟来尊重 Instacart 的基础设施
安全
- 凭据以加密形式存储在本地
.env或安全保管库中 - 每位用户的会话相互隔离
- 不会向第三方发送数据
- MIT 许可 — 你可以自行审查代码
支持
- 📖 Strider Labs 完整文档
- 🐛 报告问题
- 💬 讨论
- 🌐 网站
- 📧 电子邮件
参与贡献
欢迎贡献!我们感兴趣的方向:
- 错误报告与修复
- 功能请求(新商店、类别等)
- 性能改进
- 文档完善
请参阅 CONTRIBUTING.md 了解指南。
许可证
MIT — 可免费使用、修改和分发。详情请参阅 LICENSE。
由 Strider Labs 构建 — 让 AI Agent 真正发挥作用。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。