What your agent can do on iMessage
When iMessage opens, your AI agent can use 20 tools on it, through one MCP server or the REST API. Every action stays inside the iMessage limits that keep the account safe.
In plain words
- Answer the iMessages customers send to your business number
- Text a customer who expects to hear from you, such as a booking reminder
- Schedule messages and run automations
- A dedicated number for your business, set up by Spaces
Every tool
Some tools work on every channel where the platform supports them. If iMessage does not support an action, Spaces returns an error and nothing is sent. Writes need an Idempotency-Key, so a retry never sends twice.
Conversations
| What it does | MCP tool | REST |
|---|---|---|
| Your conversations, newest first, with their tags and owner. Filter to unread, unanswered, a tag or an owner. | list_messaging_chats | GET …/chats |
| The messages in one conversation. | list_messaging_messages | GET …/chats/{chat_id}/messages |
| An image, file, voice note or video from a message. | get_messaging_attachment | GET …/chats/{chat_id}/messages/{message_id}/attachments/{attachment_id} |
| Reply in a conversation, with text or attachments. | reply_in_chat | POST …/chats/{chat_id}/messages |
| Start a new conversation with someone who expects to hear from you. | start_chat | POST …/chats |
Schedules and routines
| What it does | MCP tool | REST |
|---|---|---|
| Send a message at a set local time, inside working hours you choose. | schedule_message | POST /v1/messaging/schedules |
| Messages waiting to be sent. | list_schedules | GET /v1/messaging/schedules |
| Change a scheduled message. | update_schedule | PATCH /v1/messaging/schedules/{schedule_id} |
| Cancel a scheduled message. | cancel_schedule | DELETE /v1/messaging/schedules/{schedule_id} |
| An automation: answer from your notes, reply to comments and message the commenter once, tag chats, call a webhook or email a summary, on a schedule or when a message or comment arrives. | create_routine | POST /v1/messaging/routines |
| Your automations. | list_routines | GET /v1/messaging/routines |
| Change or pause an automation. | update_routine | PATCH /v1/messaging/routines/{routine_id} |
| Delete an automation. | delete_routine | DELETE /v1/messaging/routines/{routine_id} |
| What an automation did, and when. | list_routine_runs | GET /v1/messaging/routines/{routine_id}/runs |
Accounts
| What it does | MCP tool | REST |
|---|---|---|
| The accounts you have connected, with their status and when each last had activity. Search by name, filter by channel or status, sort and page. | list_messaging_accounts | GET /v1/messaging/accounts |
| A link to connect a new account, or to reconnect one. | create_messaging_connect_link | POST /v1/messaging/accounts/connect-link |
| Disconnect an account. | disconnect_messaging_account | DELETE … |
Usage and billing
| What it does | MCP tool | REST |
|---|---|---|
| Messages sent today and this week, and how much room is left on each account. | get_messaging_usage | GET /v1/messaging/usage |
| Your plan and billing status. | get_messaging_billing | GET /v1/messaging/billing |
| A checkout link to choose a plan. | create_messaging_billing_checkout | POST /v1/messaging/billing/checkout |
Connect it
Use https://api.spacesos.com/mcp/imessage for an MCP server with only the iMessage tools, or https://api.spacesos.com/mcp for every channel. Setup steps for each AI client. An overview for iMessage: iMessage API for AI agents.
Other channels: WhatsApp, Instagram, LinkedIn, Messenger, X, Email.