BrandMan MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
BrandMan
BrandMan is an agent-first brand brain. It keeps a brand's mission, voice, compliance rules, audience personas, sources, campaigns, and results in one place, and lets AI agents (through MCP) and people (through a dashboard) work from that same record.
This repository is the AGPL-3.0 open core. It is free software and is not paywalled. You can run, modify, and self-host it with no BrandMan Cloud account. If you run a modified version as a network service, the AGPL requires you to offer that source to the people who use the service. The BrandMan name and logo are not covered by the license.
BrandMan Cloud is a separate paid product. It is this core plus closed components (a hosted service, billing, multi-tenancy, and similar). Cloud has more features. The open core is the smaller, functional system: one SQLite database, a password-gated dashboard, and an MCP server you run yourself. Cloud is not in this repository, and you do not need it to use the core.
Status: early (0.1.x). The core runs and is tested. Expect rough edges and breaking changes.
What the open core does
Brand context. Mission, voice, guidelines, personas, and compliance rules, readable by agents and people.
Content workflow. Sources, campaigns, channel drafts, and newsletter issues.
Exact-revision approval. A person approves one revision. The MCP server can draft and submit that revision. It has no tool that approves or publishes. Editing an approved item clears the approval, bumps the revision, and sends it back to draft. Nothing is posted to a channel automatically.
Feedback. Record what a channel did, propose a learning, and accept it into the brand context only with an explicit decision.
Missions. Time-boxed goals with a baseline, a target, and a trajectory.
MCP. The same flows for Claude, Cursor, and Codex, over stdio (
brandman-mcp) or a hosted OAuth endpoint (/mcp).Dashboard and REST API. Operator UI at
/app, and the API behind it.Channels at the edge. X and Beehiiv are replaceable adapters. The brand record does not live inside a channel.
Related MCP server: harvey-design-system-mcp
Install
Python 3.11 or newer. Package installers download the latest
brandman release on PyPI. This
repository can be ahead of that release. The wheel includes the dashboard, so
a PyPI install does not need Node.js.
pip install brandman
# or: uv tool install brandman
# or: pipx install brandmanIn an empty directory:
brandman init # writes .env (mode 600) and brandman.db, then asks for the brand
brandman serve # http://127.0.0.1:8000/appSign in with BRANDMAN_PREVIEW_PASSWORD from .env. Pass --name,
--mission, --voice, --compliance, and -y to skip the prompts.
brandman init sets the brand's approval policy to human_approval_required.
Connect Claude, Cursor, or Codex
brandman mcp-config prints a config for this install. --client accepts
claude-desktop (the default), claude-code, cursor, codex, and json.
When brandman-mcp is on PATH, the printed command is that executable.
When it is not, the command is uvx --from brandman brandman-mcp. That uvx
form is a real entry point of the package (brandman-mcp), not a separate
installer. uvx brandman starts the brandman CLI instead, which is the wrong
process for an MCP client.
Claude Desktop and Cursor use the same JSON (claude_desktop_config.json,
.cursor/mcp.json). This is the block printed when brandman-mcp is not on
PATH:
{
"mcpServers": {
"brandman": {
"command": "uvx",
"args": ["--from", "brandman", "brandman-mcp"],
"env": {
"BRANDMAN_DB": "/absolute/path/brandman.db",
"BRANDMAN_DATABASE_PROFILE": "operating"
}
}
}
}Claude Code:
claude mcp add brandman \
-e BRANDMAN_DB=/absolute/path/brandman.db \
-e BRANDMAN_DATABASE_PROFILE=operating \
-- uvx --from brandman brandman-mcpCodex writes ~/.codex/config.toml:
codex mcp add brandman \
--env BRANDMAN_DB=/absolute/path/brandman.db \
--env BRANDMAN_DATABASE_PROFILE=operating \
-- uvx --from brandman brandman-mcpbrandman mcp-config --client codex prints that command.
brandman mcp-config --help lists the clients the installed release knows.
The codex mcp add line above talks to the same brandman-mcp server either
way.
A deployed BrandMan serves MCP at https://your-host/mcp (OAuth 2.1, PKCE,
dynamic client registration):
brandman mcp-config --client claude-code --url https://your-host
# claude mcp add --transport http brandman https://your-host/mcp
brandman mcp-config --client codex --url https://your-host
# codex mcp add brandman --url https://your-host/mcpUseful first tools: list_brands, get_brand_context,
create_editorial_candidate, create_campaign, draft_post,
create_newsletter_issue, revise_newsletter_issue, get_active_mission,
report_product_gap. The full list is the tools on brandman-mcp.
Run this repository
Requires uv and Node.js 22.12+ with npm. The
dashboard source is tracked; generated files under brandman/static/app/ are
not.
git clone https://github.com/AustinNChristensen/brandman.git
cd brandman
uv sync --locked
uv run python scripts/build_dashboard.py
uv run brandman init
uv run brandman serve
uv run brandman mcp-config --client cursoruv build (with Node on the build machine) produces a wheel that already
contains the dashboard. Editable installs do not build the frontend on their
own.
Docker
cp .env.example .env # set BRANDMAN_PREVIEW_PASSWORD (16+ characters)
docker compose up -d # http://127.0.0.1:8000/appThe published port is loopback-only. See deployment.
Optional built-in drafting
MCP agents do not need this. To draft from a source without an external agent:
pip install 'brandman[anthropic]'
export ANTHROPIC_API_KEY=…
brandman draft --brand my-brand --source <source-id>That creates a draft campaign. It does not approve or publish it.
brandman-worker runs one scheduler tick and due jobs. Run it from cron, or
use the Compose file, which ticks every five minutes.
The brand-os-* commands, BRAND_OS_* variables, and the brandos_session
cookie still work. brandman-* and BRANDMAN_* are the primary names.
Documentation
For a host that serves a checkout, build the dashboard before starting the
API. A wheel install already has those assets. Keep the database on durable
storage. Set BRANDMAN_ALLOWED_HOSTS and BRANDMAN_REQUIRE_HTTPS=true behind
TLS. Do not commit .env or a database file.
Development
uv sync --locked
uv run python scripts/build_dashboard.py
uv run pytestFrontend: cd web && npm ci && npm test && npm run build.
Contributing
See CONTRIBUTING.md. Contributors sign a CLA. Contributions are released under AGPL-3.0.
License
Copyright (C) 2026 Austin Christensen.
GNU Affero General Public License v3.0. The open core is not paywalled. If you run a modified version as a network service, you must offer its source to the users of that service.
This server cannot be deployed
Maintenance
Related MCP Connectors
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Agent-first social media publishing, scheduling, analytics, and unified inbox API + 16-tool MCP server across 18 social platforms (X, LinkedIn, Instagram, YouTube, TikTok, Threads, Bluesky, Reddit, Telegram, Discord, Mastodon, Facebook, Pinterest).
Manage SRG+ hubs, channels, content, assets, users, and workspaces from any MCP-aware AI agent.
Hosted MCP server for AI agents to post to LinkedIn profiles and X and upload to YouTube.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceMCP server that exposes brand identity guidelines (visual look and voice) as markdown, enabling LLMs to produce on-brand content.27 npmMIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that exposes a versioned brand package (tokens, rules, recipes, media rights, and audit gates) as resources, tools, and prompts for AI agents. It enables agents to plan and audit on-brand UI, image, motion, and video outputs while remaining read-only and credential-free.MIT
- AlicenseBqualityAmaintenanceExposes a local-first personal brain to any MCP client, letting agents perform identity-grounded memory recall, simulate stances and value conflicts, propose or approve audited guardrail changes, take snapshots with drift comparison, and run a neural validation harness. Everything runs against a local SQLite neuron/synapse memory graph with consent-gated, append-only auditing.6CC BY-4.0
- AlicenseAqualityAmaintenanceEnables agents and scripts to drive a social publishing account through remote or local MCP tools: drafting, scheduling, approving and publishing posts, running durable background jobs with file attachments, and reading or editing Brand Memory, assets, and standing agents. Hosts can connect over OAuth with no API key, or run the stdio variant with a key for local disk tools.651MIT