Google · Capability
Google Gmail API — Messages
Google Gmail API — Messages. 8 operations. Lead operation: Google List Messages. Self-contained Naftiko capability covering one Google business surface.
What You Can Do
GET
Get
— Google List Messages
/v1/gmail/v1/users/{userid}/messages
POST
Post
— Google Insert Messages
/v1/gmail/v1/users/{userid}/messages
POST
Post
— Google Import Messages
/v1/gmail/v1/users/{userid}/messages/import
POST
Post
— Google Send Messages
/v1/gmail/v1/users/{userid}/messages/send
GET
Get
— Google Get Messages
/v1/gmail/v1/users/{userid}/messages/{id}
DELETE
Delete
— Google Delete Messages
/v1/gmail/v1/users/{userid}/messages/{id}
POST
Post
— Google Modify Messages
/v1/gmail/v1/users/{userid}/messages/{id}/modify
POST
Post
— Google Untrash Messages
/v1/gmail/v1/users/{userid}/messages/{id}/untrash
MCP Tools
google-list-messages
Google List Messages
read-only
idempotent
google-insert-messages
Google Insert Messages
google-import-messages
Google Import Messages
google-send-messages
Google Send Messages
google-get-messages
Google Get Messages
read-only
idempotent
google-delete-messages
Google Delete Messages
idempotent
google-modify-messages
Google Modify Messages
google-untrash-messages
Google Untrash Messages
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Gmail API — Messages
description: 'Google Gmail API — Messages. 8 operations. Lead operation: Google List Messages. Self-contained Naftiko capability
covering one Google business surface.'
tags:
- Google
- Messages
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_API_KEY: GOOGLE_API_KEY
capability:
consumes:
- type: http
namespace: gmail-messages
baseUri: https://gmail.googleapis.com
description: Google Gmail API — Messages business capability. Self-contained, no shared references.
resources:
- name: gmail-v1-users-userId-messages
path: /gmail/v1/users/{userId}/messages
operations:
- name: get
method: GET
description: Google List Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Accept
in: header
type: string
- name: maxResults
in: query
type: string
- name: pageToken
in: query
type: string
- name: q
in: query
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: post
method: POST
description: Google Insert Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: gmail-v1-users-userId-messages-import
path: /gmail/v1/users/{userId}/messages/import
operations:
- name: post
method: POST
description: Google Import Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: gmail-v1-users-userId-messages-send
path: /gmail/v1/users/{userId}/messages/send
operations:
- name: post
method: POST
description: Google Send Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: gmail-v1-users-userId-messages-id
path: /gmail/v1/users/{userId}/messages/{id}
operations:
- name: get
method: GET
description: Google Get Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: id
in: path
type: string
description: (Required)
required: true
- name: delete
method: DELETE
description: Google Delete Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: userId
in: path
type: string
description: (Required)
required: true
- name: id
in: path
type: string
description: (Required)
required: true
- name: gmail-v1-users-userId-messages-id-modify
path: /gmail/v1/users/{userId}/messages/{id}/modify
operations:
- name: post
method: POST
description: Google Modify Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Content-Type
in: header
type: string
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: id
in: path
type: string
description: (Required)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: gmail-v1-users-userId-messages-id-untrash
path: /gmail/v1/users/{userId}/messages/{id}/untrash
operations:
- name: post
method: POST
description: Google Untrash Messages
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Accept
in: header
type: string
- name: userId
in: path
type: string
description: (Required)
required: true
- name: id
in: path
type: string
description: (Required)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
exposes:
- type: rest
namespace: gmail-messages-rest
port: 8080
description: REST adapter for Google Gmail API — Messages. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/gmail/v1/users/{userid}/messages
name: gmail-v1-users-userid-messages
description: REST surface for gmail-v1-users-userId-messages.
operations:
- method: GET
name: get
description: Google List Messages
call: gmail-messages.get
with:
Accept: rest.Accept
maxResults: rest.maxResults
pageToken: rest.pageToken
q: rest.q
userId: rest.userId
outputParameters:
- type: object
mapping: $.
- method: POST
name: post
description: Google Insert Messages
call: gmail-messages.post
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
userId: rest.userId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/gmail/v1/users/{userid}/messages/import
name: gmail-v1-users-userid-messages-import
description: REST surface for gmail-v1-users-userId-messages-import.
operations:
- method: POST
name: post
description: Google Import Messages
call: gmail-messages.post
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
userId: rest.userId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/gmail/v1/users/{userid}/messages/send
name: gmail-v1-users-userid-messages-send
description: REST surface for gmail-v1-users-userId-messages-send.
operations:
- method: POST
name: post
description: Google Send Messages
call: gmail-messages.post
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
userId: rest.userId
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/gmail/v1/users/{userid}/messages/{id}
name: gmail-v1-users-userid-messages-id
description: REST surface for gmail-v1-users-userId-messages-id.
operations:
- method: GET
name: get
description: Google Get Messages
call: gmail-messages.get
with:
Accept: rest.Accept
userId: rest.userId
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: delete
description: Google Delete Messages
call: gmail-messages.delete
with:
userId: rest.userId
id: rest.id
outputParameters:
- type: object
mapping: $.
- path: /v1/gmail/v1/users/{userid}/messages/{id}/modify
name: gmail-v1-users-userid-messages-id-modify
description: REST surface for gmail-v1-users-userId-messages-id-modify.
operations:
- method: POST
name: post
description: Google Modify Messages
call: gmail-messages.post
with:
Content-Type: rest.Content-Type
Accept: rest.Accept
userId: rest.userId
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/gmail/v1/users/{userid}/messages/{id}/untrash
name: gmail-v1-users-userid-messages-id-untrash
description: REST surface for gmail-v1-users-userId-messages-id-untrash.
operations:
- method: POST
name: post
description: Google Untrash Messages
call: gmail-messages.post
with:
Accept: rest.Accept
userId: rest.userId
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: gmail-messages-mcp
port: 9090
transport: http
description: MCP adapter for Google Gmail API — Messages. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: google-list-messages
description: Google List Messages
hints:
readOnly: true
destructive: false
idempotent: true
call: gmail-messages.get
with:
Accept: tools.Accept
maxResults: tools.maxResults
pageToken: tools.pageToken
q: tools.q
userId: tools.userId
outputParameters:
- type: object
mapping: $.
- name: google-insert-messages
description: Google Insert Messages
hints:
readOnly: false
destructive: false
idempotent: false
call: gmail-messages.post
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
userId: tools.userId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: google-import-messages
description: Google Import Messages
hints:
readOnly: false
destructive: false
idempotent: false
call: gmail-messages.post
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
userId: tools.userId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: google-send-messages
description: Google Send Messages
hints:
readOnly: false
destructive: false
idempotent: false
call: gmail-messages.post
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
userId: tools.userId
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: google-get-messages
description: Google Get Messages
hints:
readOnly: true
destructive: false
idempotent: true
call: gmail-messages.get
with:
Accept: tools.Accept
userId: tools.userId
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: google-delete-messages
description: Google Delete Messages
hints:
readOnly: false
destructive: true
idempotent: true
call: gmail-messages.delete
with:
userId: tools.userId
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: google-modify-messages
description: Google Modify Messages
hints:
readOnly: false
destructive: false
idempotent: false
call: gmail-messages.post
with:
Content-Type: tools.Content-Type
Accept: tools.Accept
userId: tools.userId
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: google-untrash-messages
description: Google Untrash Messages
hints:
readOnly: false
destructive: false
idempotent: false
call: gmail-messages.post
with:
Accept: tools.Accept
userId: tools.userId
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.