Google · Capability
Google Books API — Bookshelves
Google Books API — Bookshelves. 3 operations. Lead operation: Google List Bookshelves. Self-contained Naftiko capability covering one Google business surface.
What You Can Do
GET
Listbookshelves
— Google List Bookshelves
/v1/users/{userid}/bookshelves
GET
Getbookshelf
— Google Get Bookshelf
/v1/users/{userid}/bookshelves/{shelf}
GET
Listbookshelfvolumes
— Google List Bookshelf Volumes
/v1/users/{userid}/bookshelves/{shelf}/volumes
MCP Tools
google-list-bookshelves
Google List Bookshelves
read-only
idempotent
google-get-bookshelf
Google Get Bookshelf
read-only
idempotent
google-list-bookshelf-volumes
Google List Bookshelf Volumes
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Books API — Bookshelves
description: 'Google Books API — Bookshelves. 3 operations. Lead operation: Google List Bookshelves. Self-contained Naftiko
capability covering one Google business surface.'
tags:
- Google
- Bookshelves
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
GOOGLE_API_KEY: GOOGLE_API_KEY
capability:
consumes:
- type: http
namespace: books-bookshelves
baseUri: https://www.googleapis.com/books/v1
description: Google Books API — Bookshelves business capability. Self-contained, no shared references.
resources:
- name: users-userId-bookshelves
path: /users/{userId}/bookshelves
operations:
- name: listbookshelves
method: GET
description: Google List Bookshelves
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: userId
in: path
type: string
description: ID of user for whom to retrieve bookshelves
required: true
- name: source
in: query
type: string
description: String to identify the originator of this request
- name: users-userId-bookshelves-shelf
path: /users/{userId}/bookshelves/{shelf}
operations:
- name: getbookshelf
method: GET
description: Google Get Bookshelf
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: userId
in: path
type: string
description: ID of user for whom to retrieve bookshelves
required: true
- name: shelf
in: path
type: string
description: ID of bookshelf to retrieve
required: true
- name: source
in: query
type: string
description: String to identify the originator of this request
- name: users-userId-bookshelves-shelf-volumes
path: /users/{userId}/bookshelves/{shelf}/volumes
operations:
- name: listbookshelfvolumes
method: GET
description: Google List Bookshelf Volumes
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: userId
in: path
type: string
description: ID of user for whom to retrieve bookshelf volumes
required: true
- name: shelf
in: path
type: string
description: ID of bookshelf to retrieve volumes
required: true
- name: maxResults
in: query
type: integer
description: Maximum number of results to return
- name: showPreorders
in: query
type: boolean
description: Set to true to show pre-ordered books
- 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 element to return (starts at 0)
authentication:
type: bearer
token: '{{env.GOOGLE_API_KEY}}'
exposes:
- type: rest
namespace: books-bookshelves-rest
port: 8080
description: REST adapter for Google Books API — Bookshelves. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/users/{userid}/bookshelves
name: users-userid-bookshelves
description: REST surface for users-userId-bookshelves.
operations:
- method: GET
name: listbookshelves
description: Google List Bookshelves
call: books-bookshelves.listbookshelves
with:
userId: rest.userId
source: rest.source
outputParameters:
- type: object
mapping: $.
- path: /v1/users/{userid}/bookshelves/{shelf}
name: users-userid-bookshelves-shelf
description: REST surface for users-userId-bookshelves-shelf.
operations:
- method: GET
name: getbookshelf
description: Google Get Bookshelf
call: books-bookshelves.getbookshelf
with:
userId: rest.userId
shelf: rest.shelf
source: rest.source
outputParameters:
- type: object
mapping: $.
- path: /v1/users/{userid}/bookshelves/{shelf}/volumes
name: users-userid-bookshelves-shelf-volumes
description: REST surface for users-userId-bookshelves-shelf-volumes.
operations:
- method: GET
name: listbookshelfvolumes
description: Google List Bookshelf Volumes
call: books-bookshelves.listbookshelfvolumes
with:
userId: rest.userId
shelf: rest.shelf
maxResults: rest.maxResults
showPreorders: rest.showPreorders
source: rest.source
startIndex: rest.startIndex
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: books-bookshelves-mcp
port: 9090
transport: http
description: MCP adapter for Google Books API — Bookshelves. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: google-list-bookshelves
description: Google List Bookshelves
hints:
readOnly: true
destructive: false
idempotent: true
call: books-bookshelves.listbookshelves
with:
userId: tools.userId
source: tools.source
outputParameters:
- type: object
mapping: $.
- name: google-get-bookshelf
description: Google Get Bookshelf
hints:
readOnly: true
destructive: false
idempotent: true
call: books-bookshelves.getbookshelf
with:
userId: tools.userId
shelf: tools.shelf
source: tools.source
outputParameters:
- type: object
mapping: $.
- name: google-list-bookshelf-volumes
description: Google List Bookshelf Volumes
hints:
readOnly: true
destructive: false
idempotent: true
call: books-bookshelves.listbookshelfvolumes
with:
userId: tools.userId
shelf: tools.shelf
maxResults: tools.maxResults
showPreorders: tools.showPreorders
source: tools.source
startIndex: tools.startIndex
outputParameters:
- type: object
mapping: $.