Give Fixie agents the ability to send email follow-ups after conversations — with MultiMail's oversight ensuring voice-to-email handoffs are reviewed before delivery.
Fixie is a platform for building and deploying AI agents with managed infrastructure, focusing on voice AI and real-time interactions. When Fixie agents handle customer conversations, they often need to send follow-up emails — meeting summaries, action items, or support ticket confirmations. MultiMail provides this email layer with built-in oversight.
MultiMail's gated_send mode is essential for voice-to-email handoffs. An agent might generate an email summary of a phone call, but the transcription or summarization could contain errors. Gating the send ensures a human reviews the email content before it reaches the customer.
Integration uses Fixie's tool system to register MultiMail API endpoints as callable tools within your agent's workflow.
Fixie voice agents may generate email content from call transcriptions. MultiMail's gated_send mode ensures these generated emails are reviewed before delivery, catching transcription or summarization errors.
After a Fixie agent handles a customer interaction, it can automatically draft follow-up emails with action items. MultiMail queues these for human review, ensuring accurate and professional communication.
Both Fixie and MultiMail provide managed infrastructure. Fixie handles agent hosting and execution, MultiMail handles email delivery and oversight — no self-hosted components needed.
When a conversation moves from Fixie's voice channel to email, MultiMail's thread tracking maintains continuity. The customer sees a cohesive conversation thread regardless of the channel transition.
import requests from 'node-fetch';
const MULTIMAIL_API = 'https://api.multimail.dev/v1';
const API_KEY = 'mm_live_your_api_key';
const HEADERS = {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
};
"cm">// Define email tools for the Fixie agent
async function sendFollowupEmail(
to: string,
subject: string,
body: string,
mailboxId: string
): Promise<string> {
const resp = await fetch(`${MULTIMAIL_API}/send`, {
method: 'POST',
headers: HEADERS,
body: JSON.stringify({
mailbox_id: mailboxId,
to,
subject,
body
})
});
const result = await resp.json();
return `Email queued for approval: ${result.id}`;
}
async function checkInbox(mailboxId: string): Promise<string> {
const resp = await fetch(
`${MULTIMAIL_API}/mailboxes/${mailboxId}/inbox?limit=10`,
{ headers: HEADERS }
);
return JSON.stringify(await resp.json());
}Register MultiMail email capabilities as tools in a Fixie agent.
"cm">// After a Fixie voice conversation completes
async function handleConversationEnd(
conversationSummary: string,
customerEmail: string,
mailboxId: string
): Promise<void> {
const emailBody = `
Hi,
Thank you for speaking with us today. Here's a summary
of our conversation:
${conversationSummary}
If you have any questions about the above, please reply
to this email.
Best regards,
Support Team
`.trim();
const resp = await fetch('https:"cm">//api.multimail.dev/v1/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer mm_live_your_api_key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
mailbox_id: mailboxId,
to: customerEmail,
subject: 'Summary of Your Recent Conversation',
body: emailBody
})
});
const result = await resp.json();
console.log(`Follow-up email queued: ${result.status}`);
"cm">// Email is queued for human approval in gated_send mode
}Generate and send a conversation summary email after a Fixie voice interaction ends.
"cm">// Configure the MultiMail MCP server for tool discovery
const mcpConfig = {
multimail: {
command: 'npx',
args: ['-y', '@multimail/mcp-server'],
env: {
MULTIMAIL_API_KEY: 'mm_live_your_api_key'
}
}
};
"cm">// The MCP server provides these tools automatically:
"cm">// - send_email: Send with oversight (gated_send default)
"cm">// - reply_email: Reply within threads
"cm">// - check_inbox: List recent messages
"cm">// - read_email: Get full email content
"cm">// - get_thread: Retrieve thread history
"cm">// - search_contacts: Find contacts
"cm">// - add_contact: Create contacts
"cm">// - tag_email: Categorize emails
"cm">// - list_mailboxes: List available mailboxes
"cm">// - create_mailbox: Set up new mailboxes
"cm">// Your Fixie agent can invoke any of these tools
"cm">// during or after conversationsConnect a Fixie agent to MultiMail via the MCP server for automatic tool discovery.
Sign up at multimail.dev, create a mailbox, and generate an API key from your dashboard. Your key will start with mm_live_.
Install the Fixie SDK for building your agent.
npm install fixieCreate functions that call the MultiMail REST API for sending emails, checking inboxes, and replying to threads. Register these as tools available to your Fixie agent.
Configure your Fixie agent to call the email tools when conversations end, generating and queuing follow-up emails for human review.
Review follow-up emails in the MultiMail dashboard. Approve after verifying the content accurately reflects the conversation.
Email infrastructure built for AI agents. Verifiable identity, graduated oversight, and a 38-tool MCP server. Formally verified in Lean 4.