Fluxito Community
Allows accessing Apple Search Ads data for advertising analytics.
Allows accessing Google Ads campaign and spend data for advertising analytics.
Allows reading Google Analytics 4 data for marketing analytics workflows.
Allows querying BigQuery, Google Cloud's data warehouse, for analytics use cases.
Allows working with Google Tag Manager containers and tags, including tag audits.
Allows accessing Meta Ads data for advertising analytics.
Allows reading product analytics data from Mixpanel.
Allows accessing Pinterest Ads data for advertising analytics.
Allows reading product analytics data from PostHog.
Allows accessing Reddit Ads data for advertising analytics.
Allows querying Snowflake data for analytics workflows.
Allows accessing TikTok Ads data for advertising analytics.
Click on "Deploy 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., "@Fluxito CommunityHow did our GA4 conversion rate change last week versus the week before?"
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.
Fluxito Community
An open-source MCP server for marketing analytics.
Connect 27 marketing and analytics platforms once, then work with them from any AI — plus tracking audits built in.
What it is
Fluxito Community gives your AI real, authenticated access to your marketing stack through the Model Context Protocol. Point Claude, ChatGPT, Cursor, Windsurf, or anything else that speaks MCP at your Fluxito server, and it can read GA4, audit GTM, compare ad spend, or query your warehouse — with your permissions, on your infrastructure.
🔌 MCP server | One |
🔍 Audit | Tag QA against 21 platform rule books, live tag tests, and scheduled test flows with email/Slack alerts |
📚 Context | A KPI library and business context your AI reads, so answers use your metrics and terminology |
💬 Chat | A simple built-in chat that uses your own OpenAI-compatible API key (OpenAI, OpenRouter, or any compatible endpoint). Read-only: it can look at your connected platforms but never change them |
👥 Teams | Projects, members, roles (RBAC), per-project OAuth apps, and an activity log of every AI tool call |
Want more? Fluxito Cloud adds tracking plans, GTM implementation, hosted dashboards, scheduled automations and more.
Related MCP server: simba-mcp
Install
Docker (recommended — no clone)
mkdir fluxito && cd fluxito
curl -O https://raw.githubusercontent.com/digitalXperiments/fluxito-community/main/docker-compose.yml
curl -o .env https://raw.githubusercontent.com/digitalXperiments/fluxito-community/main/.env.example
# One-click in-app updates (optional but recommended)
echo "UPDATER_TOKEN=$(openssl rand -hex 32)" >> .env
# Pin secrets so encrypted tokens survive restarts/updates
docker pull ghcr.io/digitalxperiments/fluxito-community:latest
echo "APP_SECRET_KEY=$(docker run --rm ghcr.io/digitalxperiments/fluxito-community python -c 'import secrets; print(secrets.token_hex(32))')" >> .env
echo "TOKEN_ENCRYPTION_KEY=$(docker run --rm ghcr.io/digitalxperiments/fluxito-community python -c 'from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())')" >> .env
docker compose up -dOpen http://localhost:8000. Update anytime from Admin → Updates, or:
docker compose pull && docker compose up -dFrom source (track main / fork)
git clone https://github.com/digitalXperiments/fluxito-community.git
cd fluxito-community
cp .env.example .env
docker compose -f docker-compose.yml -f docker-compose.build.yml up -d --buildOptional in .env so you don't repeat both compose files:
COMPOSE_FILE=docker-compose.yml:docker-compose.build.ymlUpdating
Release images: super-admin Admin → Updates → Update now (pulls image, recreates container, rolls back on failed health). Needs UPDATER_TOKEN in .env. Without it, use docker compose pull && docker compose up -d.
Source installs:
git pull
docker compose up -d --build # or with both compose files if COMPOSE_FILE isn't setMigrations run on startup (alembic upgrade head). Named volumes for Postgres/Redis persist — never docker compose down -v to update.
Air-gapped: set UPDATE_CHECKS_ENABLED=false to stop outbound GitHub version checks.
First run
Rough first-time cost: 15–25 min for Google OAuth (one app unlocks five platforms), then ~5 min to connect accounts + AI.
Open http://localhost:8000 → create the first admin (email + password; no email verification on self-host).
Admin → OAuth Apps → follow Google Cloud Setup (GA4, GTM, Ads, Search Console, BigQuery).
/connect → authorize the Google accounts you want the AI to use.
Connect an MCP client (or use the built-in Chat with your own API key under Settings → AI providers). See Connect AI with MCP and the section below.
Connecting your platforms
Start with Google when you can — one OAuth client unlocks five surfaces.
Platform | Tutorial |
Google (GA4, GTM, Ads, Search Console, BigQuery) | |
Google Analytics 4 | |
Google Tag Manager | |
Google Ads | |
Search Console | |
Bing Webmaster Tools | |
BigQuery | |
Meta Ads | |
TikTok Ads | |
LinkedIn Ads | |
Pinterest Ads | |
Snap Ads | |
X Ads | |
Reddit Ads | |
Apple Search Ads | |
Snowflake | |
Redshift | |
Amplitude | |
Adobe Analytics | |
Adobe Launch | |
Adobe Marketo Engage | |
Mixpanel | |
PostHog | |
Adjust | |
AppsFlyer | |
Branch | |
Braze | |
MoEngage |
Credentials are encrypted at rest and managed in Admin → OAuth Apps after the first admin exists — not via .env.
Team access (RBAC)
Projects are multi-user. One role model covers MCP tools and the web UI.
Tier | Access |
Owner | Everything + structural actions (transfer ownership, delete project) |
Admin | Full tools/connections; manage members and roles |
Member | No access until assigned role(s) |
Custom roles (Settings → User Roles):
Tools by domain — analytics, audience, tag manager, marketing, SEO, warehouse, knowledge, analysis (read/write)
Connections by provider — e.g. GA4 + Search Console, but not Ads
Members can hold multiple roles (union of permissions). Ungranted tools are hidden from tools/list and re-checked at execution. RBAC is off by default per project.
Configuration
Two surfaces:
.env/ environment — bootstrap only (before DB / first login)Web UI — OAuth apps, system settings, MCP, email, rate limits, etc.
Bootstrap env vars
Variable | Purpose |
| Signs session cookies (≥32 chars). Rotating logs everyone out. |
| Fernet key for OAuth/API credentials in DB. Losing it orphans tokens. |
| Postgres |
| Redis |
| Public URL (OAuth redirects + MCP clients) |
Install commands above generate the two secrets. Platform OAuth apps are configured in the UI, never in env: Admin → OAuth Apps holds the install-wide app every project uses (paste client ID/secret → Connect lights up on /connect), and a project owner can bring the project's own app instead under Project settings → OAuth apps — its own approval, branding and API limits.
Connecting an AI client (MCP)
Endpoint: /mcp. Full guide: docs/tutorials/connect-ai-mcp.md.
Optional: install Fluxito Skills so agents use tools the intended way.
Hosted / public URL
Add a custom MCP server in Claude, ChatGPT, Cursor, etc.
URL:
https://your-host/mcpComplete OAuth (or use a PAT for headless clients — see the tutorial)
Local via ngrok
ngrok http 8000
# set APP_BASE_URL to the https://….ngrok-free.app URL, restart app
# add https://….ngrok-free.app/mcp as the MCP connectorUpdate vendor OAuth redirect URIs when the public hostname changes. Free ngrok subdomains rotate on restart — keep the tunnel up while testing, or use a stable domain.
Self-hosting
Path | When |
Docker Compose | Default — local, VPS, single team |
Render one-click style | |
Railway + add Postgres/Redis | |
Your infra | Any Docker host; Postgres 15 + Redis 7 |
Default stack: nginx (port 8000) → app (FastAPI/Gunicorn) + db + redis (+ optional updater sidecar).
MCP reverse proxy must not buffer /mcp (chunked streaming):
location /mcp {
proxy_pass http://app:8001;
proxy_buffering off;
proxy_request_buffering off;
proxy_http_version 1.1;
proxy_set_header Connection "";
add_header X-Accel-Buffering no always;
}Scaling: default 4 Gunicorn workers (~2 × vCPU + 1). Plan ≥1 GB RAM for four workers.
Secrets: rotating TOKEN_ENCRYPTION_KEY without re-encrypting DB credentials permanently breaks stored connections.
Backups
Postgres is the source of truth:
docker compose exec db pg_dump -U postgres fluxito > fluxito-$(date +%F).sqlAlso back up .env (especially TOKEN_ENCRYPTION_KEY). Managed Postgres snapshots + a secrets manager are recommended in production.
Common issues
Symptom | Likely fix |
MCP 401 | Re-authorize connector; check |
|
|
"OAuth app not configured" | Save client ID/secret under Admin → OAuth Apps, or the project's own under Project settings → OAuth apps |
Disconnected after deploy |
|
Circuit breaker open | Fix root cause; check |
Google token revoked | Re-connect; Testing-mode apps expire refresh tokens quickly |
Port conflict on compose | Host already using 5432/6379 — stop them or remap ports |
curl http://localhost:8000/api/health | python -m json.tool
docker compose logs -f app
docker compose exec app alembic upgrade head
docker compose exec app alembic currentMaintenance
This community edition is a stable snapshot. It receives security fixes only — new features ship on Fluxito Cloud. Issues and PRs for bugs and security problems are welcome.
Security
Report vulnerabilities privately via GitHub Security Advisories. See SECURITY.md.
Contributing
PRs welcome — see CONTRIBUTING.md. Open an issue before large work so scope stays aligned.
License
Apache License 2.0. Copyright © 2026 Fluxito contributors. See NOTICE for third-party attributions.
Brand and platform names (Google Analytics, Meta, TikTok, Snowflake, Adobe, etc.) are trademarks of their respective owners. Fluxito is not affiliated with or endorsed by those vendors.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect authorized ad accounts to AI assistants for audits, reporting, and approval-gated changes.
Connect your ads, shop, analytics, social, CRM and finance platforms once, then let Claude, ChatGPT, Cursor or any MCP client read, join and explain your numbers. Public statistics from the World Bank, IMF, Eurostat, OECD, WHO and SEC filings come as context, searchable and chartable from the same tools. Read-only by design, every number carries its source.
Connect your AI to all your data - 200+ sources, intelligently filtered, compliance-ready.
- mcp-serverOAuthco.flyweel
Access Google & Meta Ads data via AI. Analyse campaign performance in seconds.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceConnect AI assistants to live Meta Ads, GA4, and Google Search Console data. 100% local, credentials machine-locked and encrypted. Supports Claude Desktop, Cursor, Windsurf, Cline, and more.1MIT
- -licenseNot gradedqualityBmaintenanceConnects AI assistants to marketing mix models, enabling natural language data upload, performance modeling, budget optimization, and scenario testing.-

Presso MCP Serverofficial
AlicenseNot gradedqualityDmaintenanceConnects e-commerce and marketing data sources like Shopify, GA4, Google Ads, and Meta Ads to AI assistants, enabling natural language queries about store performance, ad campaigns, and customer behavior.9 npm2MIT- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to answer growth questions in plain English by connecting to marketing and product data via 49 MCP tools.25MIT