Connect your agent
Hermes, OpenClaw, Claude, or any MCP agent. No code, no API key — you approve in a browser and it’s connected. Start here if you already have an agent.
Build with the SDK
You’re writing your own code against Tally. Use an API key and the TypeScript SDK.
Option 1: Connect your agent
Recommended — for agents like Hermes and OpenClaw. You won’t write code or paste an API key — your agent connects through a browser approval, the way you’d connect any app to a service.Create a Tally account
Sign in at tallyforagents.com (free). Your first sign-in auto-provisions your workspace and wallets.
Hand your agent the connect prompt
Paste this to your agent (Hermes, OpenClaw, Claude Code, …). It connects the agent with Tally’s device flow — no localhost, no key — and then has it fetch
/skill.md so it actually knows how to use the wallet (balance, limits, payments), instead of holding a token it doesn’t know what to do with:Approve in your browser
Your agent shows you one link. Open it, pick the workspace, mode (test), and an agent name (e.g.
hermes), and click Authorize. The agent appears in your dashboard the moment you approve. Tell your agent you’ve approved so it finishes connecting.Fund a wallet and grant the agent permission
- Wallets → Main Wallet → copy its address → get test USDC from Circle’s faucet (Base Sepolia).
- Agents → your agent → Grant permission → pick the wallet, set a per-transaction cap (
10USDC is fine), and sign with your passkey.
Ask your agent to pay
Now ask it to make a payment — e.g. “send 0.50 USDC to 0x…”, or “pay the demo weather API at https://app.tallyforagents.com/api/demo/x402-weather.” It uses the connection you just authorized, and the payment lands in your dashboard’s Transactions tab, attributed to the agent.
Other hosts (Claude Desktop’s automatic popup, the stdio server), the full prompt
variants, and troubleshooting live in Connect a remote agent.
Option 2: Build with the SDK
For when you’re writing your own code against Tally (a backend, a script, an automation). Here you use a long-lived API key and the TypeScript SDK.Generate a test API key
From the dashboard, go to API keys → New key. Pick test mode. Copy the key — it’s shown exactly once — and put it in your If your key doesn’t start with
.env.local:tly_test_, you’re not in test mode. Switch via the sidebar mode badge and try again.Fund your test wallet
Your account was auto-provisioned with a “Main Wallet” on Base Sepolia. Go to Wallets, click into Main Wallet, and copy its address. Get Base Sepolia USDC from Circle’s faucet — paste the address, request USDC. It arrives in seconds; refresh the wallet page to see the balance.
Register an agent
upsert is idempotent — safe to run on every deploy. The agent exists now, but has no authority to spend yet.Grant the agent permission
This step is dashboard-driven — by design, every grant requires a passkey signature from the wallet owner.
- In the dashboard, go to Agents and click into
quickstart-bot. - Click Grant permission.
- Pick Main Wallet, set the per-transaction max to something small (
10USDC), and sign with your passkey when prompted.
Send your first payment
payments.create() returns as soon as Privy accepts the signed RPC — typically a second or two. Send to another wallet on your account, back to the faucet, or any Base Sepolia address you control.Where to go next
- Connect a remote agent — the full agent-connection guide (every host, OAuth + device flow).
- How Tally works — the full mental-model tour.
- Permissions — daily caps, recipient allowlists, rotation, revocation.
- Webhooks — replace the polling loop with push notifications.
- MCP server reference — the four agent tools, inputs and outputs.