KosmoKrator

communication

Gmail MCP Integration for OpenAI Agents SDK

Connect Gmail to OpenAI Agents SDK through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.

16 functions 9 read 7 write OAuth browser flow auth

Connect Gmail to OpenAI Agents SDK

Attach KosmoKrator integration tools to OpenAI Agents SDK workflows through a local MCP gateway.

Start the KosmoKrator MCP gateway locally and point the OpenAI Agents SDK MCP tool at that process or wrapper. The gateway is local, scoped to this integration, and starts with --write=deny so OpenAI Agents can inspect read-capable tools without receiving write access by default.

Gmail MCP Config for OpenAI Agents SDK

Use headless JSON commands for CI-style execution and MCP for agent tool discovery.

{
  "mcpServers": {
    "kosmokrator-gmail": {
      "type": "stdio",
      "command": "kosmo",
      "args": [
        "mcp:serve",
        "--integration=gmail",
        "--write=deny"
      ]
    }
  }
}

Run the Gateway Manually

kosmokrator mcp:serve --integration=gmail --write=deny

Why Use KosmoKrator Here

Scoped tools

Expose only Gmail instead of a broad multi-service tool list.

Local credentials

Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.

Write policy

Start read-only, then opt into ask or allow for trusted workspaces.

Gmail Tools Visible to OpenAI Agents

OpenAI Agents sees stable MCP tool names generated from the Gmail integration catalog.

MCP toolSource functionTypeDescription
integration__gmail__gmail_add_labels gmail.gmail_add_labels Write Add labels to one or more Gmail messages. Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_archive gmail.gmail_archive Read Archive one or more Gmail messages (remove from inbox). Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_create_draft gmail.gmail_create_draft Write Create a draft email in Gmail (not sent).
integration__gmail__gmail_mark_read gmail.gmail_mark_read Write Mark one or more Gmail messages as read. Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_mark_unread gmail.gmail_mark_unread Write Mark one or more Gmail messages as unread. Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_read gmail.gmail_read Read Read the full content of a Gmail message by its ID. Returns headers (From, To, Subject, Date), the decoded text body, and a list of attachments. Use gmail_search first to find message IDs, then use this tool to read the full content.
integration__gmail__gmail_remove_labels gmail.gmail_remove_labels Write Remove labels from one or more Gmail messages. Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_reply gmail.gmail_reply Read Reply to an existing Gmail message (maintains the thread).
integration__gmail__gmail_count_by_sender gmail.gmail_count_by_sender Read Count all matching Gmail messages grouped by sender. Automatically paginates through ALL results (handles thousands of messages). Returns top senders sorted by count. Use for questions like "who sends me the most email?" or "count unread by sender".
integration__gmail__gmail_list_labels gmail.gmail_list_labels Read List all labels in the Gmail mailbox (INBOX, SENT, custom labels, etc.).
integration__gmail__gmail_save_attachment gmail.gmail_save_attachment Read Download an email attachment and save it to workspace files. Requires a messageId and attachmentId (both returned by gmail_read). The file is saved under the agent's folder and can be browsed in the Files page.
integration__gmail__gmail_search_emails gmail.gmail_search_emails Read Search Gmail messages using Gmail query syntax (e.g., "from:alice subject:meeting is:unread has:attachment after:2026-02-01"). Returns message summaries with headers. Max 100 per page.
integration__gmail__gmail_send_draft gmail.gmail_send_draft Write Send a previously created Gmail draft by its ID.
integration__gmail__gmail_send_email gmail.gmail_send_email Write Send an email directly via Gmail.
integration__gmail__gmail_trash gmail.gmail_trash Read Move one or more Gmail messages to trash. Provide messageIds (comma-separated) for batch operations.
integration__gmail__gmail_untrash gmail.gmail_untrash Read Remove one or more Gmail messages from trash. Provide messageIds (comma-separated) for batch operations.

Related Gmail Pages