tropmail
v1.0.0https://mcp.tropmail.com/mcpInbound-only private email for contained agents: list, search, read, update, and scan mailbox mail via TropMail.
Add to your MCP client configuration:
Tools
tropmail_list_mailboxes
read-onlyidempotentList inboxes this API key may see. Call first to learn mailbox ids for later tools.
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_list_mailboxes",
"arguments": {}
}
}const result = await client.callTool("tropmail_list_mailboxes", {});result = await session.call_tool("tropmail_list_mailboxes", arguments={}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_get_mailbox
read-onlyidempotentMailbox summary counts (opened, closed, favorite). Requires a mailbox UUID from tropmail_list_mailboxes.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_get_mailbox",
"arguments": {
"mailbox_id": "string"
}
}
}const result = await client.callTool("tropmail_get_mailbox", {
"mailbox_id": "string"
});result = await session.call_tool("tropmail_get_mailbox", arguments={
"mailbox_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_list_emails
read-onlyidempotentList emails with pagination and optional status filter. Prefer small limits for LLM context.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
limitinteger[1, 100]10argumentEmails per page
pageinteger>= 11argumentPage number
statusstringallOpenCloseFavoriteBlockPhishingScamMaliciousallargumentFilter by status
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_list_emails",
"arguments": {
"mailbox_id": "string",
"limit": 10,
"page": 1,
"status": "all"
}
}
}const result = await client.callTool("tropmail_list_emails", {
"mailbox_id": "string",
"limit": 10,
"page": 1,
"status": "all"
});result = await session.call_tool("tropmail_list_emails", arguments={
"mailbox_id": "string",
"limit": 10,
"page": 1,
"status": "all"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_search_emails
read-onlyidempotentFull-text search emails in the mailbox. Requires a non-empty query.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
querystringrequiredargumentFull-text search query
limitinteger[1, 100]10argumentResults per page
pageinteger>= 11argumentPage number
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_search_emails",
"arguments": {
"mailbox_id": "string",
"query": "string",
"limit": 10,
"page": 1
}
}
}const result = await client.callTool("tropmail_search_emails", {
"mailbox_id": "string",
"query": "string",
"limit": 10,
"page": 1
});result = await session.call_tool("tropmail_search_emails", arguments={
"mailbox_id": "string",
"query": "string",
"limit": 10,
"page": 1
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_get_email
read-onlyidempotentGet one email by UUID (default view: text). Prefer text or markdown for agents. Markdown may block up to ~60s on first conversion.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
email_idstringrequiredargumentEmail UUID
viewstringtexthtmlmarkdowntextargumentContent view
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_get_email",
"arguments": {
"mailbox_id": "string",
"email_id": "string",
"view": "text"
}
}
}const result = await client.callTool("tropmail_get_email", {
"mailbox_id": "string",
"email_id": "string",
"view": "text"
});result = await session.call_tool("tropmail_get_email", arguments={
"mailbox_id": "string",
"email_id": "string",
"view": "text"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_update_email
Update email_state and/or action_status. Send empty action_status to clear.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
email_idstringrequiredargumentEmail UUID
email_statestringOpenCloseargumentOpen or Close
action_statusstringFavoriteDeleteBlockPhishingScamMaliciousargumentAction status or empty string to clear
timestampstringargumentOptional RFC3339 timestamp from the list or detail response
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_update_email",
"arguments": {
"mailbox_id": "string",
"email_id": "string",
"email_state": "Open",
"action_status": "Favorite",
"timestamp": "string"
}
}
}const result = await client.callTool("tropmail_update_email", {
"mailbox_id": "string",
"email_id": "string",
"email_state": "Open",
"action_status": "Favorite",
"timestamp": "string"
});result = await session.call_tool("tropmail_update_email", arguments={
"mailbox_id": "string",
"email_id": "string",
"email_state": "Open",
"action_status": "Favorite",
"timestamp": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_scan_email_attachments
Start a malware scan for all attachments on an email. Poll tropmail_get_attachment until scan_status leaves Processing.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
email_idstringrequiredargumentEmail UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_scan_email_attachments",
"arguments": {
"mailbox_id": "string",
"email_id": "string"
}
}
}const result = await client.callTool("tropmail_scan_email_attachments", {
"mailbox_id": "string",
"email_id": "string"
});result = await session.call_tool("tropmail_scan_email_attachments", arguments={
"mailbox_id": "string",
"email_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_get_email_download_urls
read-onlyidempotentList attachments on an email for download (ids + available). Then call tropmail_get_download_url per attachment_id.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
email_idstringrequiredargumentEmail UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_get_email_download_urls",
"arguments": {
"mailbox_id": "string",
"email_id": "string"
}
}
}const result = await client.callTool("tropmail_get_email_download_urls", {
"mailbox_id": "string",
"email_id": "string"
});result = await session.call_tool("tropmail_get_email_download_urls", arguments={
"mailbox_id": "string",
"email_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_get_attachment
read-onlyidempotentAttachment metadata including scan_status and scan_result.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
attachment_idstringrequiredargumentAttachment UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_get_attachment",
"arguments": {
"mailbox_id": "string",
"attachment_id": "string"
}
}
}const result = await client.callTool("tropmail_get_attachment", {
"mailbox_id": "string",
"attachment_id": "string"
});result = await session.call_tool("tropmail_get_attachment", arguments={
"mailbox_id": "string",
"attachment_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_scan_attachment
Start a malware scan for one attachment. Poll tropmail_get_attachment for results.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
attachment_idstringrequiredargumentAttachment UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_scan_attachment",
"arguments": {
"mailbox_id": "string",
"attachment_id": "string"
}
}
}const result = await client.callTool("tropmail_scan_attachment", {
"mailbox_id": "string",
"attachment_id": "string"
});result = await session.call_tool("tropmail_scan_attachment", arguments={
"mailbox_id": "string",
"attachment_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}tropmail_get_download_url
read-onlyidempotentDownload one attachment as base64 (max ~4MB). Prefer SDK/CLI for larger files.
Parameters
mailbox_idstringrequiredargumentMailbox UUID
attachment_idstringrequiredargumentAttachment UUID
Returns
Returns MCP content array (text, image, or embedded resource).
{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "tropmail_get_download_url",
"arguments": {
"mailbox_id": "string",
"attachment_id": "string"
}
}
}const result = await client.callTool("tropmail_get_download_url", {
"mailbox_id": "string",
"attachment_id": "string"
});result = await session.call_tool("tropmail_get_download_url", arguments={
"mailbox_id": "string",
"attachment_id": "string"
}){
"content": [
{
"type": "text",
"text": "..."
}
]
}