posthog-ff-mcp
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., "@posthog-ff-mcpList all stale feature flags."
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.
posthog-ff-mcp
A tiny, read-only MCP server that lets Claude read PostHog feature-flag state and metadata. It wraps PostHog's REST API — listing flags, reading a flag's full definition, checking staleness, and explaining how flags evaluate for a person. It never creates, updates, or deletes anything.
It's a single Python file (server.py) with inline dependencies, so it runs locally
with uv and no build step.
Prerequisites
uvinstalled.A PostHog personal API key scoped to at least
feature_flag:readfor your project. Create one at<your-host>/settings/user-api-keys.
Related MCP server: cc-plugin-mcp
Configuration
All config is via environment variables (no defaults):
Variable | Required | Example | Notes |
| yes |
| App host. EU: |
| yes |
| Numeric project id (the number in the app URL |
| yes |
| Personal API key with |
See .env.example.
Run it locally
POSTHOG_HOST=https://eu.posthog.com \
POSTHOG_PROJECT_ID=13105 \
POSTHOG_PERSONAL_API_KEY=phx_your_key \
uv run server.pyThe first run resolves dependencies automatically; the server then speaks MCP over stdio.
Add to Claude Code
claude mcp add posthog-ff \
--env POSTHOG_HOST=https://eu.posthog.com \
--env POSTHOG_PROJECT_ID=13105 \
--env POSTHOG_PERSONAL_API_KEY=phx_your_key \
-- uv run --directory /ABSOLUTE/PATH/TO/posthog-ff-mcp server.pyReplace /ABSOLUTE/PATH/TO/posthog-ff-mcp with this repo's absolute path.
Add to Claude Desktop
Add this to claude_desktop_config.json
(macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"posthog-ff": {
"command": "uv",
"args": ["run", "--directory", "/ABSOLUTE/PATH/TO/posthog-ff-mcp", "server.py"],
"env": {
"POSTHOG_HOST": "https://eu.posthog.com",
"POSTHOG_PROJECT_ID": "13105",
"POSTHOG_PERSONAL_API_KEY": "phx_your_key"
}
}
}
}Restart Claude Desktop afterward.
Tools
Tool | What it does | Key arguments |
| List flags as compact summaries, with paging/filtering. |
|
| Full definition + metadata of one flag, including |
|
| Staleness classification of a flag. |
|
| Explain how every flag evaluates for a person and why. |
|
Example prompts
"List the active feature flags in PostHog."
"Which flags are stale?"
"Show me the full targeting for the
new-onboardingflag.""Is
beta-dashboardsafe to delete?""How do the flags evaluate for distinct id
user_123?"
Scope & limitations
Read-only. No create/update/delete — by design.
Rate limits are team-wide (480/min, 4800/hr); the server surfaces
429s clearly.Not built in this version (possible future extensions): remote-config payloads, activity/version history, SDK
local_evaluation, and the runtime/flagsevaluator (which uses a different host and the project token instead of the personal key).
This 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
- 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/bitterbit/posthog-ff-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server