Gmail Send Raw Message
Immutable Catalog Entry
This descriptor comes from the active versioned Portal catalog.
- Contract tier:
agent_ready - Risk:
destructive - Catalog version:
google-2026.07.12.2 - Descriptor hash:
4222e46fe26a4ee4a6e8bbe5670b0040b65c653536b2eddebe755f4decc0aa92
Use this Gmail irreversible send tool only for approved raw MIME sends. It sends the supplied base64url MIME payload. It can overwrite, send, move, remove, or permanently delete Google data. Use it only after preview and the manifest-defined confirmation; it requires per-request Google OAuth.
Request Body
{
"jsonrpc": "2.0",
"id": "google-gmail-send-raw-message-example",
"method": "tools/call",
"params": {
"name": "google.gmail_send_raw_message",
"arguments": {
"raw_base64": "raw_base64_example",
"thread_id": "thread_id_123"
}
}
}
Arguments Schema
{
"type": "object",
"title": "gmail_send_raw_messageArguments",
"required": [
"raw_base64"
],
"properties": {
"thread_id": {
"type": "string",
"title": "Thread Id",
"default": "",
"description": "Gmail thread ID."
},
"raw_base64": {
"type": "string",
"title": "Raw Base64",
"description": "Base64url-encoded raw MIME message."
}
},
"additionalProperties": false
}
Output Schema
{
"type": "object",
"required": [
"ok",
"data",
"error",
"meta"
],
"properties": {
"ok": {
"type": "boolean",
"description": "Whether the local or Google provider operation completed successfully."
},
"data": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "array",
"items": {}
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
}
],
"description": "Bounded local navigation or Google provider result when ok is true."
},
"meta": {
"type": "object",
"description": "Safe timing, pagination, cache, request, and truncation metadata.",
"additionalProperties": true
},
"error": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"description": "Safe structured error when ok is false."
}
},
"description": "Google MCP normalized operation envelope.",
"additionalProperties": false
}
Code Examples
- cURL
- Node.js
- Python
curl -X POST 'https://portal.madpanda3d.com/api/mcp' \
-H 'Authorization: Bearer mad_live_***' \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": "google-gmail-send-raw-message-example",
"method": "tools/call",
"params": {
"name": "google.gmail_send_raw_message",
"arguments": {
"raw_base64": "raw_base64_example",
"thread_id": "thread_id_123"
}
}
}'
const response = await fetch('https://portal.madpanda3d.com/api/mcp', {
method: 'POST',
headers: {
Authorization: 'Bearer mad_live_***',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"jsonrpc": "2.0",
"id": "google-gmail-send-raw-message-example",
"method": "tools/call",
"params": {
"name": "google.gmail_send_raw_message",
"arguments": {
"raw_base64": "raw_base64_example",
"thread_id": "thread_id_123"
}
}
}),
});
const data = await response.json();
console.log(data);
import requests
url = 'https://portal.madpanda3d.com/api/mcp'
headers = {
'Authorization': 'Bearer mad_live_***',
'Content-Type': 'application/json',
}
payload = {
"jsonrpc": "2.0",
"id": "google-gmail-send-raw-message-example",
"method": "tools/call",
"params": {
"name": "google.gmail_send_raw_message",
"arguments": {
"raw_base64": "raw_base64_example",
"thread_id": "thread_id_123"
}
}
}
response = requests.post(url, headers=headers, json=payload, timeout=60)
print(response.json())
Example Responses
- 200 Success
- 502 Upstream Error
{
"ok": true,
"message": "Tool google.gmail_send_raw_message executed successfully.",
"note": "Response shape varies by MCP tool. Inspect live responses for exact fields."
}
{
"ok": false,
"classification": "upstream_http_error",
"message": "Upstream MCP returned a non-success status."
}