llamaindex-multimail
⚠️ DEPRECATED (2026-08-08). This package is retired and will receive no further updates. MultiMail's supported integration surfaces are the MCP server at
https://mcp.multimail.dev(LangChain, CrewAI, LlamaIndex, Claude, and all MCP-capable frameworks connect natively) and the REST API (https://multimail.dev/docs). This final release only adds this deprecation notice.
LlamaIndex tools for MultiMail -- give your LlamaIndex agents email capabilities with graduated human oversight.
Installation
pip install llamaindex-multimail
Quick Start
from llama_index.core.agent import ReActAgent
from llama_index.llms.openai import OpenAI
from llamaindex_multimail import MultiMailToolSpec
# Create tools from your API key
tool_spec = MultiMailToolSpec(api_key="mm_live_your_api_key")
tools = tool_spec.to_tool_list()
# Create agent
llm = OpenAI(model="gpt-4o")
agent = ReActAgent.from_tools(tools, llm=llm, verbose=True)
# Run
response = agent.chat("Check mailbox 'mbx_123' for new emails")
print(response)
Available Tools
| Tool | Description |
|---|---|
send_email |
Send an email (held for approval if gated) |
check_inbox |
List recent emails in a mailbox |
read_email |
Read the full content of an email |
reply_email |
Reply to an existing email thread |
search_contacts |
Search contacts by name or email |
list_pending |
List emails awaiting human approval |
decide_email |
Approve or reject a pending email |
get_thread |
Get all emails in a conversation |
tag_email |
Add tags to an email for classification |
Oversight Modes
MultiMail supports graduated oversight so your agent doesn't send unsupervised email:
gated_all-- Agent drafts, human approves everythinggated_send-- Agent reads freely, human approves outbound (default)monitored-- Agent sends, human can review afterautonomous-- Full agent control
When a mailbox uses gated oversight, send_email returns pending_send_approval and the email waits for human review. The agent can check status with list_pending.
Using with Other LlamaIndex Patterns
The MultiMailToolSpec follows the standard LlamaIndex BaseToolSpec pattern, so it works with any agent framework that accepts LlamaIndex tools:
from llamaindex_multimail import MultiMailToolSpec
spec = MultiMailToolSpec(api_key="mm_live_your_api_key")
# Get all tools
tools = spec.to_tool_list()
# Or get a specific tool
send_tool = spec.to_tool_list(func_to_metadata_mapping={
"send_email": {"name": "send_email", "description": "Send an email"},
})
Links
- MultiMail -- Homepage & docs
- multimail -- Base Python SDK
- langchain-multimail -- LangChain integration
- MCP Server -- For Claude, Cursor, and other MCP clients
Release files for llamaindex-multimail 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| llamaindex_multimail-0.1.1.tar.gz | 22.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| llamaindex_multimail-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.7 kB
Release files / llamaindex_multimail-0.1.1.tar.gz
| Download URL | llamaindex_multimail-0.1.1.tar.gz |
|---|---|
| Size | 22.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
39014a1620f21d24ff4a95223f950f3fe6db6343f4963dc8e428c4e7f563ab81
|
|
BLAKE2b-256 checksum How to use checksums |
a318baf062c5e119d5c0fc1a1be6e25866d5ce7e30d294ebbb3cb88e8bf49f73
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.13
|
Release files / llamaindex_multimail-0.1.1-py3-none-any.whl
| Download URL | llamaindex_multimail-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d921f9811c4027c26d77ca334847075fe07e12fbbc35b858e9850f71c771cf76
|
|
BLAKE2b-256 checksum How to use checksums |
2c2bec79498ce7c53e23a15e2fab3ee06f1a02c62514a0ee33472e0e96242860
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.13
|