AgentCall + OpenClaw
Give your OpenClaw agents real phone numbers for SMS verification, OTP extraction, and voice calls. Set two environment variables, restart OpenClaw, and your agent auto-discovers all 17 tools — no JSON editing needed.
Quick Start
1. Get your API key
Sign up at agentcall.co/sign-up and copy your API key from the dashboard. It looks like ac_live_xxxxxxxxxxxxx
2. Connect AgentCall to OpenClaw
Paste your API key below and pick a setup method. Environment variables are the simplest — your agent auto-discovers all endpoints.
Enter your API key above to get a ready-to-copy config — or copy the placeholder and replace it later.
Environment Variables (Recommended)
Add these two environment variables to your OpenClaw server. Your agent auto-discovers all endpoints — no JSON config needed.
AGENTCALL_API_KEY=ac_live_xxxxxxxxxxxxx
AGENTCALL_API_URL=https://api.agentcall.coRestart OpenClaw after adding the variables. Your agent will automatically find the API and all 17 tools.
MCP Config (Claude Desktop, Cursor, etc.)
For MCP clients that support streamable HTTP transport. OpenClaw native MCP support is coming soon.
"agentcall": {
"transport": "streamable-http",
"url": "https://api.agentcall.co/mcp",
"headers": {
"Authorization": "Bearer ac_live_xxxxxxxxxxxxx"
}
}Local (Advanced)
Run the MCP server locally via npx. Requires Node.js on the host.
{
"mcpServers": {
"agentcall": {
"command": "npx",
"args": [
"-y",
"@agentcall/mcp-server"
],
"env": {
"AGENTCALL_API_KEY": "ac_live_xxxxxxxxxxxxx"
}
}
}
}Then restart the gateway:
openclaw gateway restart3. Talk to your agent
That's it — no system prompt needed. When your agent sees the AGENTCALL_API_URL environment variable, it hits the base URL and gets a complete map of all endpoints, auth format, and documentation link. Just message your agent:
"Get me a US phone number"
"Send a text to +15551234567 saying hello"
"Check if I got any verification codes"
"How much have I spent this month?"How It Works
Once you set the environment variables and restart OpenClaw, your agent auto-discovers the AgentCall API. No manual JSON editing — just env vars and go.
Add AGENTCALL_API_KEY and AGENTCALL_API_URL to your OpenClaw server
The agent picks up the new environment variables on next start
Agent hits the API base URL and gets a complete endpoint map with auth format and docs
The agent now knows how to provision numbers, send SMS, make calls, wait for OTP, and more
Say "text +15551234567 that the meeting moved to 3pm" and the agent picks the right endpoint automatically
Important: Restart after adding env vars
Environment variables are read at startup. Run openclaw gateway restart or restart your Hostinger VPS after adding the variables.
ClawHub Skill
AgentCall is also available as a skill on ClawHub, the OpenClaw skill marketplace. If your OpenClaw version supports ClawHub, you can install it directly:
"Install the agentcall skill from ClawHub"The ClawHub skill teaches your agent all 17 AgentCall endpoints at startup. This works alongside the environment variable approach — use whichever is easier for your setup.
Using It
Once connected, just talk to your OpenClaw agent in plain English. It will pick the right AgentCall tool automatically.
provision_numbersend_smswait_for_otpinitiate_callget_inboxget_usagerelease_numberYou don't need to know tool names — the agent maps your request to the right tool based on what you ask.
Tool Reference — 17 tools
Phone Numbers
provision_numberProvision a new phone numbertype (local/tollfree/mobile/sim), country?, label?list_numbersList all provisioned numberslimit?, country?, type?get_numberGet details of a specific numbernumberIdrelease_numberRelease a phone numbernumberIdSMS
send_smsSend an SMS messagefrom, to, bodyget_inboxGet inbound messages for a numbernumberId, limit?, otpOnly?get_messageGet a specific messagemessageIdwait_for_otpWait for an OTP code to arrivenumberId, timeout?Voice Calls
initiate_callStart an outbound phone callfrom, to, record?list_callsList call historylimit?get_callGet details of a specific callcallIdhangup_callTerminate an active callcallIdWebhooks
create_webhookRegister a webhook endpointurl, events[]list_webhooksList registered webhooksnonerotate_webhook_secretRotate the signing secret for a webhookwebhookIddelete_webhookDeactivate and remove a webhookwebhookIdUsage & Billing
get_usageGet usage and cost breakdown for a billing periodperiod?Example Workflows
Heartbeat Test
Create this as a task file your OpenClaw agent can execute to verify the integration works end-to-end:
# Task: Phone Verification Heartbeat
## Objective
Provision an AgentCall number, verify it can receive SMS, and clean up.
## Steps
1. **Provision a number**
- Call `provision_number` with type "local" and country "US"
- Save the number ID and phone number from the response
2. **Send a test SMS**
- Call `send_sms` with:
- from: the number you just provisioned
- to: the same number (self-send for testing)
- body: "Heartbeat test 12345"
3. **Check the inbox**
- Call `get_inbox` with the number ID
- Verify the test message appears
4. **Wait for OTP (simulated)**
- Call `wait_for_otp` with the number ID and timeout 10000
- This demonstrates the polling behavior
- A null result is expected if no external service sent an OTP
5. **Check usage**
- Call `get_usage` to verify the SMS was tracked
6. **Clean up**
- Call `release_number` with the number ID
- Confirm the number was released
## Success criteria
- Number provisioned successfully (got a num_ ID back)
- SMS sent without errors
- Inbox returned messages
- Number released successfully
- No errors in any stepAutomated Signup with Phone Verification
Here's how an OpenClaw agent handles a website signup that requires phone verification — fully autonomously:
provision_number → gets +12125551234wait_for_otp → gets “847291”release_number to clean upThe entire flow takes ~15 seconds and costs ~$0.02.
Troubleshooting
Error: “AgentCall API key required”
The API can't find your key. Fix:
- Check that
AGENTCALL_API_KEYis set in your environment - Verify the key starts with
ac_live_ - Restart OpenClaw after adding the variable
Error: “plan_limit” (403)
You've hit a plan limit. Common causes:
- Free plan: max 1 phone number, 50 SMS/month, 10 call minutes/month
- Provisioning SIM numbers: SIM type requires a Pro plan
- Recording calls: requires Pro plan
Fix: Upgrade to Pro at agentcall.co/dashboard, or use release_number to free up your number slot before provisioning a new one.
Error: “Invalid E.164 phone number”
Phone numbers must be in E.164 format: + followed by country code and number, no spaces or dashes.
Links
Ready to give your agents phone numbers?
Get your API key, add it to OpenClaw, and your agents get 17 phone skills instantly.
Get API Key — Free