Ogave SMSDevelopers

AI agents (MCP)

An MCP (Model Context Protocol) server so your AI assistant can send SMS, check deliveries, manage contacts and Verify codes in your account. Server URL:

https://app.ogave.co/mcp

Connect

Recommended: add the URL in your AI app and sign in when it asks (OAuth). A screen lets you choose test or live mode and the permissions. Disconnect it any time in Developers › API keys › Connected AI apps. Team members can only give the permissions of their role.

Claude

Claude (web and desktop): Settings › Connectors › Add custom connector › the URL above. Claude Code:

claude mcp add --transport http ogave-sms https://app.ogave.co/mcp

ChatGPT

Settings › Connectors (developer mode) › Create › MCP server URL = the one above, authentication OAuth.

Cursor

// ~/.cursor/mcp.json
{ "mcpServers": { "ogave-sms": { "url": "https://app.ogave.co/mcp" } } }

VS Code

// .vscode/mcp.json
{ "servers": { "ogave-sms": { "type": "http", "url": "https://app.ogave.co/mcp" } } }

With an API key (scripts, servers)

Create a key in Developers › API keys with the mcp permission (plus the ones the tools need) and send it as a header:

Authorization: Bearer test_…
// Cursor / VS Code: "headers": { "Authorization": "Bearer ${env:API_KEY}" }

With a test_ key everything is simulated: nothing is sent or charged.

Tools

ToolWhat it doesPermission
quote_pricePrice, segments and encoding of one SMS before sending it. Nothing is sent.balance:read
send_smsSend one SMS. Without confirm: true it only returns the quote; show it to the user and ask before confirming.messages:send
send_batchSend one text to a contact list or to up to 10,000 numbers per call. dry_run (default true) returns recipients, segments and total cost; send with dry_run: false after the user agrees.messages:send
get_messageStatus, receipt, price and error of one message.messages:read
list_messagesNewest first, with filters.messages:read
get_balanceBalance and currency of the account.balance:read
list_contact_listsContact lists with their ids and sizes.contacts:read
add_contactsAdd or update up to 100 contacts in a list. Without confirm: true it only validates.contacts:write
verify_startSend a Verify one-time code at once (no confirmation needed): by SMS to a phone number, by email to an address (channel email), or SMS first and the code by email if it is not verified in time (channel auto, give email).verify
verify_checkCheck the code the person received.verify
get_reportMessages, delivery rate and cost for a period, grouped.reports:read
send_emailSend a transactional email to one address or up to 10,000 (one email each) from a sending identity of the account (see list_email_identities). Assistant mode: without confirm: true it only returns the price; show it to the user and ask before confirming.email:send
get_emailOne email with its delivery timeline (accepted, sent, delivered, bounced, opened, clicked…).email:read
list_emailsNewest first, each with its timeline. Filters: status, to, tag.email:read
list_email_identitiesThe sending domains and addresses the account may send email from.email:read
list_sender_idsSender IDs approved on the account.messages:read
list_templatesApproved SMS templates (id, name, text with {placeholders}).messages:read

Resources: the API documentation (docs://api), this guide (docs://mcp) and prices per country (pricing://countries). Prompts: "write and send a campaign", "check delivery of the last campaign".

Modes: assistant or automatic

Every API key or connected app has a mode (Developers › API keys › AI agent):

Limits

Docs for AI tools

To let an assistant read these docs without the HTML: https://app.ogave.co/llms.txt (index), /llms-full.txt (every page in one file) and each page as Markdown by adding .md to its address, e.g. /docs/api.md.