blogger-mcp-toolkit
Provides tools for managing Blogger blogs, posts, pages, comments, media, and user profiles via the Google Blogger API v3.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@blogger-mcp-toolkitList my recent blog posts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
blogger-mcp-toolkit
A universal MCP (Model Context Protocol) server providing complete access to the Google Blogger API v3, permanent Base64 media embedding, and lightweight summary listing modes.
Interact seamlessly with Blogger blogs, posts, pages, comments, media, and user profiles directly from your favorite AI assistant or MCP-enabled client (such as Claude Code, Claude Desktop, Cursor, Zed, Windsurf, or Antigravity CLI).
📑 Table of Contents
Related MCP server: blogger-mcp
🌟 Features
100% Blogger API v3 Coverage + Media & Search Extensions: 29 MCP tools for full management of blogs, posts, pages, comments, media, and users.
Remote-Friendly Interactive OAuth (
npx blogger-mcp-auth): Standalone authentication CLI supporting local browser redirect AND manual code copy-pasting for remote/SSH/Docker environments.Strict
BLOGGER_*Environment Schema: Clean, standardized configuration usingBLOGGER_CLIENT_ID,BLOGGER_CLIENT_SECRET,BLOGGER_REFRESH_TOKEN, andBLOGGER_API_KEY.Permanent Base64 Image Embedding (
blogger_media_to_base64): Convert local images (.png,.jpg,.jpeg,.webp,.gif,.svg) into Base64 Data URIs with zero external CDN dependencies, ensuring your images never expire.Lightweight Listing Mode (
summaryOnly): Omit heavy HTML post content onlist,search, andsearchByLabelendpoints to drastically reduce JSON response sizes (from >50KB down to ~2KB) and prevent payload truncation.Dedicated Label Search (
blogger_posts_searchByLabel): Quick filtering of posts by tag/label.Automatic HTML Markdown Cleaner: Cleans raw Markdown code fences (e.g.
html ...) before publishing posts or pages to Blogger.
🚀 Quick Start & Installation
Step 1: Acquire your Blogger Refresh Token
Run the interactive authentication tool directly in your terminal:
Option A (Official GitHub Release — Recommended for Latest Version):
npx github:RadouaneElarfaoui/blogger-mcp-toolkit blogger-mcp-authOption B (NPM Registry Release):
npx blogger-mcp-authInteractive Prompt: Enter your
BLOGGER_CLIENT_IDandBLOGGER_CLIENT_SECRETwhen prompted.Browser Authentication: Authorize the app in your browser. (If working over SSH/remote container, simply copy-paste the redirected URL or authorization code back into the terminal!)
Token Output: Copy the generated
BLOGGER_REFRESH_TOKENdisplayed in green.
Step 2: Install across your AI assistants with add-mcp
Install and configure automatically across all your AI assistants (Claude Code, Cursor, Zed, Windsurf, VS Code, etc.) in one single command:
Option A (Official GitHub Release — Recommended for Latest Version):
npx add-mcp github:RadouaneElarfaoui/blogger-mcp-toolkit \ --env BLOGGER_CLIENT_ID=your-client-id.apps.googleusercontent.com \ --env BLOGGER_CLIENT_SECRET=your-client-secret \ --env BLOGGER_REFRESH_TOKEN=your-refresh-tokenOption B (NPM Registry Release):
npx add-mcp blogger-mcp-toolkit \ --env BLOGGER_CLIENT_ID=your-client-id.apps.googleusercontent.com \ --env BLOGGER_CLIENT_SECRET=your-client-secret \ --env BLOGGER_REFRESH_TOKEN=your-refresh-token
⚙️ Google Cloud Console Setup
To communicate with the Blogger API, you need OAuth2 credentials:
Create a Project: Go to Google Cloud Console, click New Project, and name it (e.g.,
Blogger MCP).Enable Blogger API v3: Go to APIs & Services > Library, search for Blogger API v3, and click Enable.
Configure OAuth Consent Screen:
Go to APIs & Services > OAuth consent screen.
Choose External, fill in required support email fields.
Under Test users, add your own Google email address (Crucial if your app is in "Testing" status!).
Create Credentials:
Go to APIs & Services > Credentials > + CREATE CREDENTIALS > OAuth client ID.
Select Web application (or Desktop app).
Add Authorized redirect URI:
http://localhost:3000/oauth2callback(or port 3001/3002).Copy your Client ID and Client Secret.
📦 Manual Setup
# Clone the repository
git clone https://github.com/RadouaneElarfaoui/blogger-mcp-toolkit.git
cd blogger-mcp-toolkit
# Install dependencies & build
npm install
npm run build
# Generate Refresh Token locally
cp .env.example .env
npm run auth🌍 Environment Variables
blogger-mcp-toolkit exclusively uses the following BLOGGER_* environment variables:
Variable | Description | Required |
| OAuth2 Client ID from Google Cloud Console | Yes |
| OAuth2 Client Secret from Google Cloud Console | Yes |
| OAuth2 Refresh Token (generated via | Yes |
| Optional API key for read-only access | No |
🛠️ Available Tools (29)
Tool Name | Description |
| Get blog metadata by blog ID |
| Get blog metadata by its URL |
| List blogs for a user |
Tool Name | Description |
| List posts for a blog (supports |
| Get a post by ID |
| Get a post by its URL path |
| Search posts by query string (supports |
| Filter posts by a label/tag (supports |
| Create a new post (automatically strips raw Markdown HTML code block wrappers) |
| Full update of a post |
| Partial update of a post |
| Delete a post |
| Publish a draft post |
| Revert a published post to draft |
Tool Name | Description |
| List static pages for a blog |
| Get a page by ID |
| Create a new static page (automatically strips raw Markdown HTML code block wrappers) |
| Full update of a page |
| Partial update of a page |
| Delete a page |
Tool Name | Description |
| List comments for a specific post |
| List comments across all posts |
| Get a specific comment |
| Approve a comment |
| Permanently delete a comment |
| Remove comment content |
| Mark a comment as spam |
Tool Name | Description |
| Convert a local image file (.png, .jpg, .jpeg, .webp, .gif, .svg) to an embedded Base64 Data URI with a ready-to-use Blogger |
Tool Name | Description |
| Get user profile information |
🔌 MCP Client Configuration
Claude Desktop
Edit your claude_desktop_config.json:
{
"mcpServers": {
"blogger": {
"command": "npx",
"args": ["-y", "blogger-mcp-toolkit"],
"env": {
"BLOGGER_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"BLOGGER_CLIENT_SECRET": "your-client-secret",
"BLOGGER_REFRESH_TOKEN": "your-refresh-token"
}
}
}
}Cursor
Edit .cursor/mcp.json or Cursor MCP settings:
{
"mcpServers": {
"blogger": {
"command": "npx",
"args": ["-y", "blogger-mcp-toolkit"],
"env": {
"BLOGGER_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"BLOGGER_CLIENT_SECRET": "your-client-secret",
"BLOGGER_REFRESH_TOKEN": "your-refresh-token"
}
}
}
}Windsurf
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"blogger": {
"command": "npx",
"args": ["-y", "blogger-mcp-toolkit"],
"env": {
"BLOGGER_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"BLOGGER_CLIENT_SECRET": "your-client-secret",
"BLOGGER_REFRESH_TOKEN": "your-refresh-token"
}
}
}
}Zed
Edit settings.json in Zed:
{
"context_servers": {
"blogger": {
"command": {
"path": "npx",
"args": ["-y", "blogger-mcp-toolkit"]
},
"env": {
"BLOGGER_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"BLOGGER_CLIENT_SECRET": "your-client-secret",
"BLOGGER_REFRESH_TOKEN": "your-refresh-token"
}
}
}
}📄 License
This project is licensed under the MIT License.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceAn intermediary server that enables AI models to interact with Google's Blogger platform, automating the creation and management of blogs, posts, and labels through the Blogger API.Last updated141MIT
- FlicenseAqualityDmaintenanceA custom MCP server for interacting with Google Blogger blogs. It provides tools to list, create, edit, delete, and publish blog posts through Claude Code or Claude Desktop.Last updated9
- AlicenseAqualityCmaintenanceMCP server for Alog, an AI × Human blog platform. Enables AI agents to post logs, create and publish articles, search content, and interact socially on alog.world.Last updated19421MIT
- FlicenseDqualityDmaintenanceMCP server for blog management that provides tools to get, search, and create blog posts via a mock API.Last updated3
Related MCP Connectors
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
Google Docs MCP Pack — read, create, and edit Google Docs via OAuth.
A basic MCP server to operate on the Postman API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RadouaneElarfaoui/blogger-mcp-toolkit'
If you have feedback or need assistance with the MCP directory API, please join our Discord server