Documentation

How AGline works

You get a private number. Your AI agent uses it to ring you when it needs a decision. You answer by voice or text, and the agent gets your reply.

Get started in two minutes

  1. Get your number in the browser, or in the Android app. No account or email.
  2. Open Connect your AI. Paste the one-line test: your device rings, and you see the answer come back.
  3. Add the server to your agent once so it can call and text you by itself. See below.

Receive calls on your devices

One number can ring several devices. The first to answer takes the call, and the others stop ringing.

Android phone

Set up: Install the Android app from the download page (an .apk, no Play Store needed).

A call looks like: A full-screen call over the lock screen, with a ringtone. Answer and speak.

On Samsung, Xiaomi and similar phones, set the app to "unrestricted" battery use, or the system may delay rings.

iPhone and iPad

Set up: Open the site in Safari, tap Share, then Add to Home Screen, and turn on call notifications.

A call looks like: A notification you tap to answer, then speak or type. Works with the screen locked as a normal notification.

No full-screen ring on iOS until the native app is released. Silent or Focus modes can mute it.

Mac

Set up: Open the site in Chrome, Edge or Safari 17+. Install it (Chrome: Install icon; Safari: File, Add to Dock) and allow notifications.

A call looks like: A desktop notification with Answer and Decline, plus a ringing banner if the app is open.

Voice replies use the browser. Safari and Chrome work; typing always works.

Windows

Set up: Open the site in Chrome or Edge, click the Install icon in the address bar, and allow notifications.

A call looks like: A Windows notification with Answer and Decline, plus a ringing banner if the app is open.

Check Focus assist is not blocking notifications.

Mac desktop app

Set up: Download the .dmg from the download page, drag AGline to Applications, then Control-click Open the first time.

A call looks like: An incoming-call window with Answer and Decline from the menu bar app, even when the main window is closed.

Unsigned for now; reply by typing.

Windows desktop app

Set up: Download the .exe from the download page and run it; on the SmartScreen warning choose More info, then Run anyway.

A call looks like: An incoming-call window with Answer and Decline from the tray app, even when the main window is closed.

Unsigned for now; reply by typing. Check Focus assist is off.

Linux and other browsers

Set up: Open the site in Chrome or Firefox and allow notifications.

A call looks like: Browser notifications and an in-page ring while the page is open.

Firefox cannot do voice input, so you type your answer.

Connect your AI agent

Any tool that supports MCP servers over HTTP can use AGline. The server address is:

https://agline.in/mcp

Claude Code, the easy way: the plugin

/plugin marketplace add imjarvissingh/agline-plugin
/plugin install agline@agline

The plugin adds the server and teaches Claude when to call you and when to text, how to phrase it for the ear, and to treat your spoken reply as your answer and not as instructions.

Other ways

claude mcp add --transport http agline https://agline.in/mcp
codex mcp add agline --url https://agline.in/mcp

For Cursor, Gemini CLI, claude.ai and ChatGPT, use your app's custom MCP connector setting with the address above. Setup snippets are on the Connect page in the app. Tell the agent your number and not to guess it.

Reference

MCP tools

call
Rings the person and reads a message aloud (up to 2,000 characters). Returns their spoken reply as text. Holds about 30 seconds, then returns a call_id.
poll_result
Finishes a call that was still in progress. Pass the thread token from the call (the MCP tool handles it for you).
send_message
Sends a text to their inbox without ringing.
read_replies
Returns replies they typed that the agent has not read yet. Needs the thread_token that call and send_message return when a thread is first created (or an API key).

Plain HTTP

Examples use a Mac/Linux shell. In Windows PowerShell use Invoke-RestMethod -Method Post -Uri URL -ContentType 'application/json' -Body '{"to":"YOUR_NUMBER","text":"Hi"}'. Command Prompt does not understand single quotes: use curl.exe with double quotes and escape the inner ones as \". The Connect page shows ready-made commands for your shell.

No MCP client needed. Add Authorization: Bearer ck_… if you use agent keys.

If a ring returns in_progress, save its thread_token and poll with POST /v1/ring/<call_id>, sending {"thread_token":"..."} in the JSON body or the token in x-thread-token. A thread token is not a Bearer token; GET /v1/calls/<id> is for a signed-in recipient device.

# ring and wait for the answer (up to ~30 s)
curl -sS https://agline.in/v1/ring -H 'content-type: application/json' \
  -d '{"to":"YOUR_NUMBER","text":"Deploy now? Say yes or no."}'

# text without ringing
curl -sS https://agline.in/v1/text -H 'content-type: application/json' \
  -d '{"to":"YOUR_NUMBER","text":"Build finished."}'

Errors use normal HTTP codes: 404 no such number, 403 blocked, 429 over a limit, 409 quiet hours.

You stay in control

  • Keys only: refuse calls to your bare number. Only agents holding a key you made can reach you.
  • Block any agent in one tap, and set calls per hour and quiet hours, when calls become silent texts.
  • Regenerate your number if it leaks, or delete everything, any time.
  • Treat your number like a phone number: share it only with your own agents.

Troubleshooting

  • No ring: turn on call notifications (My Number page). On Android, allow lock-screen calls and set battery to unrestricted. On iPhone, add the app to the Home Screen first.
  • Agent says unknown number: check the number, which may have been regenerated. Agents must never guess it.
  • Agent says unavailable: the free trial ended and there is no active subscription.
  • Voice not heard: allow the microphone, or type your answer in the call screen.