Google Blogger · Capability
Google Blogger API
The Blogger API v3 allows you to create, read, update, and delete Blogger resources including blogs, posts, pages, comments, and users. You can integrate Blogger content into your application using RESTful operations.
What You Can Do
GET
Getblog
— Get a blog
/blogs/{blogId}
GET
Getblogbyurl
— Get a blog by URL
/blogs/byurl
GET
Listblogsbyuser
— List blogs by user
/users/{userId}/blogs
GET
Listposts
— List posts
/blogs/{blogId}/posts
POST
Insertpost
— Create a post
/blogs/{blogId}/posts
GET
Getpost
— Get a post
/blogs/{blogId}/posts/{postId}
PUT
Updatepost
— Update a post
/blogs/{blogId}/posts/{postId}
PATCH
Patchpost
— Patch a post
/blogs/{blogId}/posts/{postId}
DELETE
Deletepost
— Delete a post
/blogs/{blogId}/posts/{postId}
GET
Searchposts
— Search posts
/blogs/{blogId}/posts/search
GET
Listpages
— List pages
/blogs/{blogId}/pages
POST
Insertpage
— Create a page
/blogs/{blogId}/pages
GET
Listcomments
— List comments
/blogs/{blogId}/posts/{postId}/comments
GET
Getcomment
— Get a comment
/blogs/{blogId}/posts/{postId}/comments/{commentId}
DELETE
Deletecomment
— Delete a comment
/blogs/{blogId}/posts/{postId}/comments/{commentId}
GET
Getuser
— Get a user
/users/{userId}
MCP Tools
getblog
Get a blog
read-only
idempotent
getblogbyurl
Get a blog by URL
read-only
idempotent
listblogsbyuser
List blogs by user
read-only
idempotent
listposts
List posts
read-only
idempotent
insertpost
Create a post
getpost
Get a post
read-only
idempotent
updatepost
Update a post
idempotent
patchpost
Patch a post
deletepost
Delete a post
idempotent
searchposts
Search posts
read-only
idempotent
listpages
List pages
read-only
idempotent
insertpage
Create a page
listcomments
List comments
read-only
idempotent
getcomment
Get a comment
read-only
idempotent
deletecomment
Delete a comment
idempotent
getuser
Get a user
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Google Blogger API
description: The Blogger API v3 allows you to create, read, update, and delete Blogger resources including blogs, posts,
pages, comments, and users. You can integrate Blogger content into your application using RESTful operations.
tags:
- Google
- Blogger
- API
created: '2026-05-06'
modified: '2026-05-06'
capability:
consumes:
- type: http
namespace: google-blogger
baseUri: https://www.googleapis.com/blogger/v3
description: Google Blogger API HTTP API.
authentication:
type: bearer
token: '{{GOOGLE_BLOGGER_TOKEN}}'
resources:
- name: blogs-blogid
path: /blogs/{blogId}
operations:
- name: getblog
method: GET
description: Get a blog
inputParameters:
- name: blogId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-byurl
path: /blogs/byurl
operations:
- name: getblogbyurl
method: GET
description: Get a blog by URL
inputParameters:
- name: url
in: query
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: users-userid-blogs
path: /users/{userId}/blogs
operations:
- name: listblogsbyuser
method: GET
description: List blogs by user
inputParameters:
- name: userId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-posts
path: /blogs/{blogId}/posts
operations:
- name: listposts
method: GET
description: List posts
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: maxResults
in: query
type: integer
- name: pageToken
in: query
type: string
- name: labels
in: query
type: string
- name: startDate
in: query
type: string
- name: endDate
in: query
type: string
- name: status
in: query
type: string
- name: orderBy
in: query
type: string
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: insertpost
method: POST
description: Create a post
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: isDraft
in: query
type: boolean
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-posts-postid
path: /blogs/{blogId}/posts/{postId}
operations:
- name: getpost
method: GET
description: Get a post
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: updatepost
method: PUT
description: Update a post
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: patchpost
method: PATCH
description: Patch a post
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: deletepost
method: DELETE
description: Delete a post
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-posts-search
path: /blogs/{blogId}/posts/search
operations:
- name: searchposts
method: GET
description: Search posts
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: q
in: query
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-pages
path: /blogs/{blogId}/pages
operations:
- name: listpages
method: GET
description: List pages
inputParameters:
- name: blogId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: insertpage
method: POST
description: Create a page
inputParameters:
- name: blogId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-posts-postid-comments
path: /blogs/{blogId}/posts/{postId}/comments
operations:
- name: listcomments
method: GET
description: List comments
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
- name: maxResults
in: query
type: integer
- name: pageToken
in: query
type: string
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: blogs-blogid-posts-postid-comments-commentid
path: /blogs/{blogId}/posts/{postId}/comments/{commentId}
operations:
- name: getcomment
method: GET
description: Get a comment
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
- name: commentId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: deletecomment
method: DELETE
description: Delete a comment
inputParameters:
- name: blogId
in: path
type: string
required: true
- name: postId
in: path
type: string
required: true
- name: commentId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: users-userid
path: /users/{userId}
operations:
- name: getuser
method: GET
description: Get a user
inputParameters:
- name: userId
in: path
type: string
required: true
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
port: 8080
namespace: google-blogger-rest
description: REST adapter for Google Blogger API.
resources:
- path: /blogs/{blogId}
name: getblog
operations:
- method: GET
name: getblog
description: Get a blog
call: google-blogger.getblog
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/byurl
name: getblogbyurl
operations:
- method: GET
name: getblogbyurl
description: Get a blog by URL
call: google-blogger.getblogbyurl
outputParameters:
- type: object
mapping: $.
- path: /users/{userId}/blogs
name: listblogsbyuser
operations:
- method: GET
name: listblogsbyuser
description: List blogs by user
call: google-blogger.listblogsbyuser
with:
userId: rest.userId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts
name: listposts
operations:
- method: GET
name: listposts
description: List posts
call: google-blogger.listposts
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts
name: insertpost
operations:
- method: POST
name: insertpost
description: Create a post
call: google-blogger.insertpost
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}
name: getpost
operations:
- method: GET
name: getpost
description: Get a post
call: google-blogger.getpost
with:
blogId: rest.blogId
postId: rest.postId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}
name: updatepost
operations:
- method: PUT
name: updatepost
description: Update a post
call: google-blogger.updatepost
with:
blogId: rest.blogId
postId: rest.postId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}
name: patchpost
operations:
- method: PATCH
name: patchpost
description: Patch a post
call: google-blogger.patchpost
with:
blogId: rest.blogId
postId: rest.postId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}
name: deletepost
operations:
- method: DELETE
name: deletepost
description: Delete a post
call: google-blogger.deletepost
with:
blogId: rest.blogId
postId: rest.postId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/search
name: searchposts
operations:
- method: GET
name: searchposts
description: Search posts
call: google-blogger.searchposts
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/pages
name: listpages
operations:
- method: GET
name: listpages
description: List pages
call: google-blogger.listpages
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/pages
name: insertpage
operations:
- method: POST
name: insertpage
description: Create a page
call: google-blogger.insertpage
with:
blogId: rest.blogId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}/comments
name: listcomments
operations:
- method: GET
name: listcomments
description: List comments
call: google-blogger.listcomments
with:
blogId: rest.blogId
postId: rest.postId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}/comments/{commentId}
name: getcomment
operations:
- method: GET
name: getcomment
description: Get a comment
call: google-blogger.getcomment
with:
blogId: rest.blogId
postId: rest.postId
commentId: rest.commentId
outputParameters:
- type: object
mapping: $.
- path: /blogs/{blogId}/posts/{postId}/comments/{commentId}
name: deletecomment
operations:
- method: DELETE
name: deletecomment
description: Delete a comment
call: google-blogger.deletecomment
with:
blogId: rest.blogId
postId: rest.postId
commentId: rest.commentId
outputParameters:
- type: object
mapping: $.
- path: /users/{userId}
name: getuser
operations:
- method: GET
name: getuser
description: Get a user
call: google-blogger.getuser
with:
userId: rest.userId
outputParameters:
- type: object
mapping: $.
- type: mcp
port: 9090
namespace: google-blogger-mcp
transport: http
description: MCP adapter for Google Blogger API for AI agent use.
tools:
- name: getblog
description: Get a blog
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.getblog
with:
blogId: tools.blogId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
outputParameters:
- type: object
mapping: $.
- name: getblogbyurl
description: Get a blog by URL
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.getblogbyurl
with:
url: tools.url
inputParameters:
- name: url
type: string
description: url
required: true
outputParameters:
- type: object
mapping: $.
- name: listblogsbyuser
description: List blogs by user
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.listblogsbyuser
with:
userId: tools.userId
inputParameters:
- name: userId
type: string
description: userId
required: true
outputParameters:
- type: object
mapping: $.
- name: listposts
description: List posts
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.listposts
with:
blogId: tools.blogId
maxResults: tools.maxResults
pageToken: tools.pageToken
labels: tools.labels
startDate: tools.startDate
endDate: tools.endDate
status: tools.status
orderBy: tools.orderBy
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: maxResults
type: integer
description: maxResults
- name: pageToken
type: string
description: pageToken
- name: labels
type: string
description: labels
- name: startDate
type: string
description: startDate
- name: endDate
type: string
description: endDate
- name: status
type: string
description: status
- name: orderBy
type: string
description: orderBy
outputParameters:
- type: object
mapping: $.
- name: insertpost
description: Create a post
hints:
readOnly: false
destructive: false
idempotent: false
call: google-blogger.insertpost
with:
blogId: tools.blogId
isDraft: tools.isDraft
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: isDraft
type: boolean
description: isDraft
outputParameters:
- type: object
mapping: $.
- name: getpost
description: Get a post
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.getpost
with:
blogId: tools.blogId
postId: tools.postId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
outputParameters:
- type: object
mapping: $.
- name: updatepost
description: Update a post
hints:
readOnly: false
destructive: false
idempotent: true
call: google-blogger.updatepost
with:
blogId: tools.blogId
postId: tools.postId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
outputParameters:
- type: object
mapping: $.
- name: patchpost
description: Patch a post
hints:
readOnly: false
destructive: false
idempotent: false
call: google-blogger.patchpost
with:
blogId: tools.blogId
postId: tools.postId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
outputParameters:
- type: object
mapping: $.
- name: deletepost
description: Delete a post
hints:
readOnly: false
destructive: true
idempotent: true
call: google-blogger.deletepost
with:
blogId: tools.blogId
postId: tools.postId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
outputParameters:
- type: object
mapping: $.
- name: searchposts
description: Search posts
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.searchposts
with:
blogId: tools.blogId
q: tools.q
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: q
type: string
description: q
required: true
outputParameters:
- type: object
mapping: $.
- name: listpages
description: List pages
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.listpages
with:
blogId: tools.blogId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
outputParameters:
- type: object
mapping: $.
- name: insertpage
description: Create a page
hints:
readOnly: false
destructive: false
idempotent: false
call: google-blogger.insertpage
with:
blogId: tools.blogId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
outputParameters:
- type: object
mapping: $.
- name: listcomments
description: List comments
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.listcomments
with:
blogId: tools.blogId
postId: tools.postId
maxResults: tools.maxResults
pageToken: tools.pageToken
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
- name: maxResults
type: integer
description: maxResults
- name: pageToken
type: string
description: pageToken
outputParameters:
- type: object
mapping: $.
- name: getcomment
description: Get a comment
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.getcomment
with:
blogId: tools.blogId
postId: tools.postId
commentId: tools.commentId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
- name: commentId
type: string
description: commentId
required: true
outputParameters:
- type: object
mapping: $.
- name: deletecomment
description: Delete a comment
hints:
readOnly: false
destructive: true
idempotent: true
call: google-blogger.deletecomment
with:
blogId: tools.blogId
postId: tools.postId
commentId: tools.commentId
inputParameters:
- name: blogId
type: string
description: blogId
required: true
- name: postId
type: string
description: postId
required: true
- name: commentId
type: string
description: commentId
required: true
outputParameters:
- type: object
mapping: $.
- name: getuser
description: Get a user
hints:
readOnly: true
destructive: false
idempotent: true
call: google-blogger.getuser
with:
userId: tools.userId
inputParameters:
- name: userId
type: string
description: userId
required: true
outputParameters:
- type: object
mapping: $.
binds:
- namespace: env
keys:
GOOGLE_BLOGGER_TOKEN: GOOGLE_BLOGGER_TOKEN