PostMCP
Allows management of social news posts in Firebase Firestore, enabling CRUD operations on posts with fields like title, content, images, categories, and tags.
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., "@PostMCPlist posts with tag technology"
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.
PostMCP
An MCP (Model Context Protocol) server for managing AI-generated social news
posts in Firebase Firestore (AiPosts collection).
Quick Start
# Install dependencies
python3 -m venv .venv && .venv/bin/pip install -e ".[dev]"
# Configure environment
cp .env.example .env
# Edit .env with your Firebase project details
# Run the server
python -m postmcp
.envis optional. If you only launch PostMCP through an MCP client (Claude Desktop, Hermes Agent), pass the env vars in the client config instead..envis only needed when runningpython -m postmcpdirectly in the terminal (e.g., for testing).
Related MCP server: Firebase Realtime Database API MCP Server
Configuration
Variable | Description |
| Firebase service account email |
| Firebase service account private key |
| Firebase project ID |
| Firestore collection name (default: |
| Logging level (default: |
Connect from Claude Desktop
Add to your claude_desktop_config.json (see examples/claude_desktop_config.json):
{
"mcpServers": {
"postmcp": {
"command": "/ABSOLUTE/PATH/TO/PostMCP/.venv/bin/python",
"args": ["-m", "postmcp"],
"env": {
"FIREBASE_CLIENT_EMAIL": "your-service-account@your-project.iam.gserviceaccount.com",
"FIREBASE_PRIVATE_KEY": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----",
"FIREBASE_PROJECT_ID": "your-project-id"
}
}
}
}Connect from Hermes Agent
Add to your ~/.hermes/config.yaml (see examples/hermes_config.yaml):
mcp_servers:
postmcp:
command: "/ABSOLUTE/PATH/TO/PostMCP/.venv/bin/python"
args: ["-m", "postmcp"]
env:
FIREBASE_CLIENT_EMAIL: "your-service-account@..."
FIREBASE_PRIVATE_KEY: "-----BEGIN PRIVATE KEY-----\n..."
FIREBASE_PROJECT_ID: "your-project-id"Tools
create_post_tool— Create a new post with title, content, description, slug, images, categories, tagsget_post_tool— Get a post by IDlist_posts_tool— List posts filtered by category or tagupdate_post_tool— Update any field on a postdelete_post_tool— Delete a post by ID
Firestore Document Schema
AiPosts/{doc_id}
├── title: string
├── content: string (HTML)
├── description: string
├── slug: string
├── main_img: string (URL)
├── main_img_path: string (storage path)
├── category_ids: string[]
├── tags: string[]
├── views30: number
├── published: boolean
└── created_at: string (ISO 8601)See AGENTS.md for full tool documentation for AI agents using this server.
See CLAUDE.md for development conventions.
Project Structure
src/postmcp/
├── server.py Entry point and MCP registration
├── config.py Configuration from env vars
├── types.py Pydantic models
├── tools/ MCP tool implementations
├── resources/ MCP resource providers
├── prompts/ MCP prompt templates
├── services/ Business logic layer
└── utils/ Logging, errorsThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/vaxosv/FirabasePostMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server