Google · Capability
Google Books API — Volumes
Google Books API — Volumes. 2 operations. Lead operation: Google List Volumes. Self-contained Naftiko capability covering one Google business surface.
What You Can Do
GET
Listvolumes
— Google List Volumes
/v1/volumes
GET
Getvolume
— Google Get Volume
/v1/volumes/{volumeid}
MCP Tools
google-list-volumes
Google List Volumes
read-only
idempotent
google-get-volume
Google Get Volume
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Books API — Volumes
description: 'Google Books API — Volumes. 2 operations. Lead operation: Google List Volumes. Self-contained Naftiko capability
covering one Google business surface.'
tags:
- Google
- Volumes
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_API_KEY: GOOGLE_API_KEY
capability:
consumes:
- type: http
namespace: books-volumes
baseUri: https://www.googleapis.com/books/v1
description: Google Books API — Volumes business capability. Self-contained, no shared references.
resources:
- name: volumes
path: /volumes
operations:
- name: listvolumes
method: GET
description: Google List Volumes
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: q
in: query
type: string
description: Full-text search query string
required: true
- name: download
in: query
type: string
description: Restrict to volumes by download availability
- name: filter
in: query
type: string
description: Filter search results
- name: langRestrict
in: query
type: string
description: Restrict results to books with this language code
- name: libraryRestrict
in: query
type: string
description: Restrict search to this user's library
- name: maxResults
in: query
type: integer
description: Maximum number of results to return (0 to 40)
- name: orderBy
in: query
type: string
description: Sort search results
- name: partner
in: query
type: string
description: Restrict and brand results for partner ID
- name: printType
in: query
type: string
description: Restrict to books or magazines
- name: projection
in: query
type: string
description: Restrict information returned to a set of selected fields
- name: showPreorders
in: query
type: boolean
description: Set to true to show books available for preorder
- name: source
in: query
type: string
description: String to identify the originator of this request
- name: startIndex
in: query
type: integer
description: Index of the first result to return (starts at 0)
- name: volumes-volumeId
path: /volumes/{volumeId}
operations:
- name: getvolume
method: GET
description: Google Get Volume
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: volumeId
in: path
type: string
description: ID of volume to retrieve
required: true
- name: partner
in: query
type: string
description: Brand results for partner ID
- name: projection
in: query
type: string
description: Restrict information returned to a set of selected fields
- name: source
in: query
type: string
description: String to identify the originator of this request
authentication:
type: bearer
token: '{{env.GOOGLE_API_KEY}}'
exposes:
- type: rest
namespace: books-volumes-rest
port: 8080
description: REST adapter for Google Books API — Volumes. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/volumes
name: volumes
description: REST surface for volumes.
operations:
- method: GET
name: listvolumes
description: Google List Volumes
call: books-volumes.listvolumes
with:
q: rest.q
download: rest.download
filter: rest.filter
langRestrict: rest.langRestrict
libraryRestrict: rest.libraryRestrict
maxResults: rest.maxResults
orderBy: rest.orderBy
partner: rest.partner
printType: rest.printType
projection: rest.projection
showPreorders: rest.showPreorders
source: rest.source
startIndex: rest.startIndex
outputParameters:
- type: object
mapping: $.
- path: /v1/volumes/{volumeid}
name: volumes-volumeid
description: REST surface for volumes-volumeId.
operations:
- method: GET
name: getvolume
description: Google Get Volume
call: books-volumes.getvolume
with:
volumeId: rest.volumeId
partner: rest.partner
projection: rest.projection
source: rest.source
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: books-volumes-mcp
port: 9090
transport: http
description: MCP adapter for Google Books API — Volumes. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: google-list-volumes
description: Google List Volumes
hints:
readOnly: true
destructive: false
idempotent: true
call: books-volumes.listvolumes
with:
q: tools.q
download: tools.download
filter: tools.filter
langRestrict: tools.langRestrict
libraryRestrict: tools.libraryRestrict
maxResults: tools.maxResults
orderBy: tools.orderBy
partner: tools.partner
printType: tools.printType
projection: tools.projection
showPreorders: tools.showPreorders
source: tools.source
startIndex: tools.startIndex
outputParameters:
- type: object
mapping: $.
- name: google-get-volume
description: Google Get Volume
hints:
readOnly: true
destructive: false
idempotent: true
call: books-volumes.getvolume
with:
volumeId: tools.volumeId
partner: tools.partner
projection: tools.projection
source: tools.source
outputParameters:
- type: object
mapping: $.