
A working Model Context Protocol (MCP) server for Google's Blogger API. Fixes critical issues in existing implementations with proper JSON-RPC protocol, TypeScript support, and comprehensive error...
概览
A working Model Context Protocol (MCP) server for Google's Blogger API that enables AI assistants like Claude to interact with Blogger blogs. - Get blog information by URL or ID - List blog posts with pagination - Retrieve specific posts by ID - Search posts within a blog - Proper MCP protocol implementation - TypeScript support with full type safety - Node.js 18+ and npm - Google Cloud API key with Blogger API v3 enabled - A Blogger blog (blogs must be created manually via blogger.com) 1. Go to Google Cloud Console 2. Create a new project or select existing one 3. Enable the Blogger API v3 4. Create an API key in the Credentials section 5. Note the API key for configuration For , add to your claude_desktop_config.json: : ~/Library/Application Support/Claude/claude_desktop_config.json : %APPDATA%/Claude/claude_desktop_config.json Completely close and restart Claude Desktop to load the new configuration.
README
以下为原文 README 节选,完整内容请查看原文。
Blogger MCP Server
A working Model Context Protocol (MCP) server for Google’s Blogger API that enables AI assistants like Claude to interact with Blogger blogs.
Features
- Get blog information by URL or ID
- List blog posts with pagination
- Retrieve specific posts by ID
- Search posts within a blog
- Proper MCP protocol implementation
- TypeScript support with full type safety
Prerequisites
- Node.js 18+ and npm
- Google Cloud API key with Blogger API v3 enabled
- A Blogger blog (blogs must be created manually via blogger.com)
Installation
Option 1: From Source (Recommended)
git clone https://github.com/your-username/blogger-mcp-server.git
cd blogger-mcp-server
npm install
npm run build
Option 2: Global Installation
npm install -g blogger-mcp-server-fixed
Setup
1. Get Google API Key
- Go to Google Cloud Console
- Create a new project or select existing one
- Enable the Blogger API v3
- Create an API key in the Credentials section
- Note the API key for configuration
2. Configure MCP Client
For Claude Desktop, add to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"blogger": {
"command": "node",
"args": [
"/path/to/blogger-mcp-server/dist/index.js"
],
"env": {
"BLOGGER_API_KEY": "your_google_api_key_here",
"BLOGGER_ID": "your_blog_id_here",
"GOOGLE_CLIENT_ID": "your_oauth_client_id_here",
"GOOGLE_CLIENT_SECRET": "your_oauth_client_secret_here"
}
}
}
}
3. Restart Claude Desktop
Completely close and restart Claude Desktop to load the new configuration.
Usage
Once configured, you can interact with your Blogger blog through natural language:
Read Operations:
- “Get information about my blog at myblog.blogspot.com”
- “List the recent posts on my blog”
- “Search for posts about photography in my blog”
- “Show me the details of post ID 123456789”
Write Operations (requires OAuth):
- “Create a draft blog post about my recent photo shoot”
- “Update the post with ID 123456789”
- “Delete the draft post with ID 987654321”
Important: Always use the correct blog URL or ID. The server will target the specific blog you reference in your requests.
Finding Your Blog ID
To get your blog ID, use the get_blog_info tool with your blog URL:
"Get information about my blog at myblog.blogspot.com"
The response will include the blog ID that you can use for other operations. For example:
{
"id": "1234567890123456789",
"name": "My Blog",
"url": "https://myblog.blogspot.com/"
}
Use the id field for subsequent operations like creating posts.
Environment Variables
BLOGGER_API_KEY (required for read operations)
安装
This server does not publish a one-line install command.
Open the repository installation guide 新手?先看 mcpskill.org 教程 →配置
{
"mcpServers": {
"blogger": {
"command": "node",
"args": [
"/path/to/blogger-mcp-server/dist/index.js"
],
"env": {
"BLOGGER_API_KEY": "your_google_api_key_here",
"BLOGGER_ID": "your_blog_id_here",
"GOOGLE_CLIENT_ID": "your_oauth_client_id_here",
"GOOGLE_CLIENT_SECRET": "your_oauth_client_secret_here"
}
}
}
}