agentPickup

io.github.dav3trad3r由 GitHub 账号 dav3trad3r 发布v0.3.1更新于 Nov 5, 2026

Find pickup shops near you, order, pay by card or USDC (x402), and get the QR to collect in person.

发布方自己的服务:Useful Work

已验证Streamable HTTP可网页运行位置与生活金融商业与电商

概览

AI 生成的概览

让助手查找附近的到店自取商店、下单、用银行卡或 USDC(x402)付款,并交付到店取货的二维码凭证。

可以做什么
  • 按坐标、地点名称或关键词查找商店,含地址、营业时间、距离和匹配商品
  • 查看商店的商品与价格、取货地点和可用的付款方式
  • 创建到店自取订单,可用钱包付款或获取银行卡结账链接
  • 通过 x402 用 USDC 支付订单,并取回取货凭证、取货码和二维码
  • 处理拼单:发起并分享拼单码、加入并支付自己那份、查看状态、提前关闭
适用场景
适合用户想在线购买、再到本地商店自取的场景,例如集体买咖啡或就近取货,并愿意用银行卡或加密钱包付款。也适合多人各自付款的拼单。
运行要求
可使用 agentpickup.app 的远程端点,或在本地运行 npm 包,需 Node 22.13 或更高版本。本地使用需设置 AGENTPICKUP_SHOP_URL,实际付款还需持有 USDC 的 AGENTPICKUP_WALLET_KEY;AGENTPICKUP_MAX_PER_ORDER、AGENTPICKUP_NETWORKS 和 AGENTPICKUP_DIRECTORY_URL 为可选项。取货二维码需发送到用户邮箱。
安装前请注意
pay_order 会从配置的钱包中花真实资金;未设置 AGENTPICKUP_WALLET_KEY 时只返回报价。该密钥是私钥,请使用只放少量、可承受被代理花费的资金的钱包,并把 AGENTPICKUP_MAX_PER_ORDER 设低。下单会把用户邮箱发给商店,拼单会分享加入码。付款前请与用户确认商品和总额。

安装

在 SourceWeft 中

  1. 打开 控制台中的 agentPickup,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.dav3trad3r%2Fagentpickup/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "agentpickup": {
      "type": "http",
      "url": "https://agentpickup.app/mcp"
    }
  }
}

README

@agentpickup/mcp

An MCP server for agentPickup shops. It lets an AI agent find pickup shops near its user, see what they sell, order, pay by card or in USDC over x402, and hand its user the QR they show at the counter to collect.

Tools

ToolWhat it does
find_shopsShops near a point (lat/lng), in a suburb (place) or selling something (query), from the agentPickup directory: each one's shop_url, address, hours, open now, distance and matching items
get_shopItems and prices, the pickup location, and how the shop takes payment
create_pickup_orderCreates an order. Needs the user's email, where the shop sends the receipt and pickup QR. A test shop marks it paid straight away, with no money moving. Where the shop takes cards, payment: "card" returns a checkout link for the user to pay on instead
pay_orderPays the order's x402 link from your wallet and returns the pass link. With no wallet set up, returns the price and pay link instead. For a card order, returns its checkout link
order_statusWaiting for payment, paid, ready, collected or expired
get_pickup_passFetches the pass link, pickup code and QR again by signing in as the paying wallet (Sign-In-With-X)
start_group_orderStarts a group order (a coffee run) with a closing time; returns the code to share and a key to close it early
join_group_orderAdds the user's items to a group order by its code; pay the share with pay_order before it closes
group_order_statusWho's in, what they ordered, who has paid, and whether the shop's order is ready or collected
close_group_orderCloses a group order early, as its organiser; the shop gets one combined order and the organiser its QR

Use it

Try it against the hosted demo shop first. It pays with the demo's own small wallet, within the demo's caps:

json
{ "mcpServers": { "agentpickup": { "type": "http", "url": "https://agentpickup.app/mcp" } } }

Or run it locally against any agentPickup shop, with your own wallet:

json
{  "mcpServers": {    "agentpickup": {      "command": "npx",      "args": ["-y", "@agentpickup/mcp"],      "env": {        "AGENTPICKUP_SHOP_URL": "https://orders.yourshop.com",        "AGENTPICKUP_WALLET_KEY": "0x…",        "AGENTPICKUP_MAX_PER_ORDER": "$25"      }    }  }}
SettingDefault
AGENTPICKUP_SHOP_URLthe demo shopThe shop to order from. Tool calls can also name another shop with shop_url
AGENTPICKUP_WALLET_KEYnoneAn EVM private key holding USDC. Without it, pay_order only quotes
AGENTPICKUP_MAX_PER_ORDER$25The most the wallet pays for one order
AGENTPICKUP_NETWORKSeip155:84532Networks the wallet may pay on. Base Sepolia (test USDC) unless you add eip155:8453 for Base mainnet
AGENTPICKUP_DIRECTORY_URLhttps://agentpickup.app/directory/v1/shopsWhere find_shops searches. off leaves the tool out

Use a wallet that holds only what you're willing to let an agent spend. The tools tell the model to confirm items and the total with the user before paying.

Host it in your own server

ts
import { createMcpHandler, walletPayer } from "@agentpickup/mcp";
const mcp = createMcpHandler({ shopUrl: "https://orders.yourshop.com" }); // no wallet: pay_order quotesapp.all("/mcp", (c) => mcp(c.req.raw)); // Streamable HTTP, stateless, any Request/Response runtime

Node 22.13 or later. Licence: FSL-1.1-ALv2 (free to use and self-host; becomes Apache-2.0 two years after each release).

来源:packages/mcp/README.md,提交 f70d35d

工具

10

find_shops

Find pickup shops

Find agentPickup shops to order from: near a point (lat/lng), in a suburb or city (place), or selling something (query). Returns each shop's shop_url, pickup address, hours, whether it's open now, distance, and matching menu items.

输入参数latlnglimitplacequeryopen_nowradius_km

get_shop

See what a shop sells

What the shop sells (item ids and prices), where to collect, and which payments it takes.

输入参数shop_url

create_pickup_order

Order for pickup

Create an order to collect in person. Returns the order id and total; pay it with pay_order. The shop emails the pickup QR to `email` once it's paid. Where the shop takes cards, `payment: "card"` returns a checkout link for the user to pay on instead.

输入参数nameemail必填items必填paymentshop_url

pay_order

Pay for an order

Pay an order in USDC over x402 from wallet 0xd253e213cE143Aa0E1e1cAfc92f7AE82c98aB3bB. This spends money: confirm the items and total with the user first. Returns the pickup pass link.

输入参数order_id必填shop_url

order_status

Check an order

Whether an order is waiting for payment, paid, ready to collect, collected or expired.

输入参数order_id必填shop_url

get_pickup_pass

Get the pickup pass

The pass link, pickup code and QR content for an order this wallet paid, by signing in with the wallet (Sign-In-With-X).

输入参数order_id必填shop_url

start_group_order

Start a group order

Start a group order (a coffee run) at a shop. Returns a code to share: each person's agent joins with it and pays for their own items. When it closes, the shop gets one combined order and the organiser is emailed its pickup QR.

输入参数titleshop_urlorganiser_name必填organiser_email必填closes_in_minutes

join_group_order

Join a group order

Add the user's items to a group order with its code. Returns the order id; pay it with pay_order before the group closes. The organiser collects everything, so the user gets a receipt, not a QR.

输入参数code必填name必填email必填items必填shop_url

group_order_status

Check a group order

Who's in a group order, what they ordered, who has paid, and whether it has closed and been collected.

输入参数code必填shop_url

close_group_order

Close a group order now

Close a group order early, as its organiser. Unpaid shares are left out; the shop gets the rest as one order.

输入参数code必填shop_urlorganiser_key必填

版本历史

3
  1. v0.3.1最新Nov 5, 2026
  2. v0.2.0Nov 3, 2026
  3. v0.1.1Nov 3, 2026

评分

已满足适用检查项的 90%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。

其他 Usefulwork 集成