MCP server for Agentline — give your AI agent a phone number, email, SMS, and voice calls.
Project description
Agentline MCP
Give your AI agent a phone number, email, SMS, and voice calls — as MCP tools.
Install once in Claude Desktop, Cursor, Zed, Windsurf, or any MCP client, and your agent can provision phone numbers, capture 2FA codes, send SMS, place AI voice calls, and send/receive email directly.
Install
# requires uv — https://docs.astral.sh/uv/
uvx agentline-mcp
Or with pip:
pip install agentline-mcp
agentline-mcp
Configure
Set your API key as an environment variable. Get one at agentline.co.
export AGENTLINE_API_KEY=ag_live_...
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"agentline": {
"command": "uvx",
"args": ["agentline-mcp"],
"env": {
"AGENTLINE_API_KEY": "ag_live_..."
}
}
}
}
Cursor
~/.cursor/mcp.json:
{
"mcpServers": {
"agentline": {
"command": "uvx",
"args": ["agentline-mcp"],
"env": {
"AGENTLINE_API_KEY": "ag_live_..."
}
}
}
}
Zed
Add to ~/.config/zed/settings.json:
{
"context_servers": {
"agentline": {
"command": {
"path": "uvx",
"args": ["agentline-mcp"],
"env": { "AGENTLINE_API_KEY": "ag_live_..." }
}
}
}
}
Windsurf / Continue / any stdio MCP client
Use the same uvx agentline-mcp command and set AGENTLINE_API_KEY in the server's env. All major MCP clients share the same stdio launch pattern.
Tools exposed
Phone numbers
provision_number— get a phone number the agent can userelease_number— release when done (avoids monthly charges)list_numbers— list provisioned numbers
SMS
send_sms— send an outbound SMSwait_for_sms— long-poll for the next inbound SMS (with optional regex match)capture_code— the killer flow. Provision + wait for 2FA code + release, in one call
Voice
make_call— place an outbound AI voice call (non-blocking, returns call_id)get_call— status, transcript, summary for a callhangup_call— end an in-progress call
create_email_address— provision an emaillist_email_addresses— list provisioned addressesrelease_email_address— releasesend_email— send an outbound emailwait_for_email— long-poll for an inbound emailcapture_email_code— provision + wait for email-based verification code + release
Example prompts
"Sign me up for Substack using a throwaway phone number. Capture the 2FA code, paste it into the signup form, then release the number."
"Call +15551234567, pose as my assistant scheduling a dentist appointment for next Tuesday morning. Summarize the outcome when the call ends."
"Provision a new email address, start a free trial on example.com with it, and tell me the verification code that arrives."
Environment variables
| Var | Required | Default | Notes |
|---|---|---|---|
AGENTLINE_API_KEY |
yes | — | Starts with ag_live_ or ag_test_ |
AGENTLINE_BASE_URL |
no | https://api.agentline.dev |
Override for self-hosted / staging |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agentline_mcp-0.1.1.tar.gz.
File metadata
- Download URL: agentline_mcp-0.1.1.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
64befede937dd8fee929745e6b937e8cccf990d16a619628b0f3d8e5300eeb4d
|
|
| MD5 |
3407157eea7bae6ac03a80aada4200b9
|
|
| BLAKE2b-256 |
27505f85356656028fe678ed9bd53f92d7f7cf1cf4fe1bab96382093b921906f
|
File details
Details for the file agentline_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: agentline_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b0dc1066ff6b89f0f9f03ae699883179f39859d4540b485893f316544c724c5
|
|
| MD5 |
46d105be0cdf116fe131e532f05cbbe7
|
|
| BLAKE2b-256 |
4db4b5938b10540d575dcc432e0c16a8f8df11f1cf64131cb73353c7c946f1fe
|