Braandly runs a hosted Model Context Protocol (MCP) server that connects AI assistants to your workspace. Once it is set up, you can ask an assistant like Claude to read your brand guidelines, manage your tasks and docs, or search the design catalog, and it acts in Braandly on your behalf. This guide explains what MCP is, what you can do with it, and how to connect.
What is MCP?
Model Context Protocol is an open standard for connecting AI applications to outside systems. Think of it as a standard port for AI: instead of every assistant needing a custom integration, MCP gives them one common way to use your tools and data.
Braandly's MCP server exposes the public API as a set of tools an assistant can call. You talk to your assistant in plain language, and it uses those tools to get things done in your workspace.
What you can do
Connect an assistant and ask it to:
- Create, update, and organize tasks and projects.
- Read and write workspace docs, and read your personal docs.
- Read and write comments on tasks, projects, brands, and other resources.
- Read and update brand guidelines and brand identity.
- Create, update, archive, and set the visibility of brands.
- Manage your Brinks (link-in-bio pages).
- Search the public catalog of brands, color palettes, fonts, and gradients.
The assistant works inside the workspaces you belong to, with the same permissions your account has.
Supported clients
The server works with MCP-compatible clients, including:
- Claude (web and desktop)
- Claude Code
- Cursor
- VS Code and GitHub Copilot
- Codex and Gemini CLI
- Windsurf, Goose, and other remote-MCP clients
- ChatGPT
Many of these can sign in with Braandly directly (OAuth); the rest connect with an API key. The in-app connect page has one-click buttons and the exact setup for each.
Available tools
The server provides more than 85 tools, grouped by resource. List tools return slim summaries; the matching get_ tool (or expand: "full") returns the full detail.
| Group | What it covers |
|---|---|
| Workspaces | List and get workspaces and members, update a workspace, get stats and activity |
| Projects | List, get, create, update, delete projects; sections and project members |
| Tasks | List, get, create, update, delete tasks; tags and subtasks |
| Comments | List, create, update, delete comments on tasks, projects, brands, and more |
| Docs | List and get workspace and personal docs; create, update, delete, duplicate |
| Brand guidelines | List, get, create, update, delete, change status |
| Brand identity | List, get, update a brand's identity |
| Workspace brands | List, get, create, update, archive, set visibility |
| Brinks | List, get, create, update, delete; manage Brink blocks |
| Design library | Save and delete custom palettes and gradients |
| Catalog | Search and get brands, palettes, fonts, gradients, and your saved assets |
See the full tool list
Workspaces: list_workspaces, get_workspace, update_workspace, list_workspace_members, get_member, get_workspace_stats, get_activity
Projects: list_projects, get_project, create_project, update_project, delete_project, list_project_sections, create_project_section, update_project_section, reorder_project_sections, delete_project_section, list_project_members, add_project_member, update_project_member_role, remove_project_member
Tasks: list_workspace_tasks, list_project_tasks, get_task, create_task, update_task, delete_task, list_tags, create_tag, update_tag, delete_tag, list_subtasks, create_subtask, update_subtask, complete_subtask, delete_subtask
Comments: list_comments, create_comment, update_comment, delete_comment
Docs: list_workspace_docs, get_doc, list_personal_docs, get_personal_doc, create_workspace_doc, update_workspace_doc, delete_workspace_doc, duplicate_workspace_doc, create_personal_doc, update_personal_doc, delete_personal_doc
Brand guidelines: list_brand_guidelines, get_brand_guideline, create_brand_guideline, update_brand_guideline, delete_brand_guideline, update_brand_guideline_status
Brand identity: list_brand_identities, get_brand_identity, update_brand_identity
Workspace brands: list_workspace_brands, get_workspace_brand, create_brand, update_brand, archive_brand, set_brand_visibility
Brinks: list_brinks, get_brink, create_brink, update_brink, delete_brink, add_brink_block, update_brink_block, reorder_brink_blocks, delete_brink_block
Design library: save_palette, delete_palette, save_gradient, delete_gradient
Catalog: search_brands, search_palettes, search_fonts, search_gradients, get_brand, get_palette, get_font, get_gradient, get_user_assets
Connect an assistant
The server lives at this URL:
https://mcp.braandly.com/mcp
- Choose how to authenticate. Where the client supports it, you can sign in to Braandly to authorize access, with no key to manage. Otherwise, create an API key of type
apiwith the scopes you want the assistant to have. See Create and manage Braandly API keys. - Add the Braandly server to your client using the URL above. Sign in when the client prompts you, or provide your API key. The exact place to do this depends on the client (see below).
- Open a new conversation and confirm the Braandly tools appear. Ask the assistant to list your workspaces to test the connection.
Claude Code
Add the server from the command line:
claude mcp add --transport http braandly https://mcp.braandly.com/mcp --header "ApiKey: bk_your_key_here"
Or add it to your .mcp.json:
{
"mcpServers": {
"braandly": {
"type": "http",
"url": "https://mcp.braandly.com/mcp",
"headers": { "ApiKey": "bk_your_key_here" }
}
}
}
Cursor and other clients that use an mcp.json file
Add an entry with the same shape to your client's MCP config file:
{
"mcpServers": {
"braandly": {
"type": "http",
"url": "https://mcp.braandly.com/mcp",
"headers": { "ApiKey": "bk_your_key_here" }
}
}
}
Reload the client so it picks up the new server.
Claude (web and desktop), ChatGPT, and other connector clients
These clients can sign in with Braandly (OAuth), so you authorize access instead of pasting a key.
- Claude (web and desktop): open connector settings, add a custom connector, and paste the URL
https://mcp.braandly.com/mcp. Approve the access when Braandly asks. - ChatGPT: open Settings > Apps > Advanced settings, turn on developer mode, then Create a connector with the same URL. Sign in when prompted.
Once connected, the Braandly tools become available in your conversations. If a client does not offer sign-in, provide a Braandly API key instead.
Authentication and permissions
You can connect in one of two ways:
- Sign in with Braandly (OAuth). Where the client supports it, you add the server URL and sign in to Braandly to authorize access, with no key to paste or store. You approve the access on a Braandly consent screen. Claude (web and desktop), ChatGPT, and many editor clients connect this way. This is the recommended method when it is available.
- API key. Send your key in the
ApiKeyheader, as shown in the setup above. This works in every client, and is how Claude Code, Cursor, and similar tools connect.
Either way, the assistant inherits your access. The same scopes and workspace roles from the API apply here.
The assistant acts with your permissions. It can reach only the workspaces you belong to, and it can only do what the connected key's scopes allow. A guest connection is read-only. To let an assistant create or change data, use a key with the matching write scopes and a workspace role of member or higher. To limit an assistant to reading, give its key read scopes only.
List tools return slim summaries to keep responses small. If you need the full body of a doc, guideline, project, or task, ask the assistant for that single item, or it can request the list with expand: "full".
Frequently asked
Does the assistant act as me?
Yes. It uses your connection, so it sees the workspaces you are a member of and is bound by your role and the key's scopes. It cannot do anything you could not do yourself.
Can I limit what the assistant can change?
Yes. Connect it with a key that holds only the scopes you want. For a read-only assistant, give the key read scopes only. A guest connection is read-only regardless of scopes.
How do I disconnect it?
Remove the Braandly server from your client, or revoke the API key in Settings > API Keys. Revoking the key stops access immediately, everywhere it was used.
Troubleshooting
The client asks me to authenticate, or calls fail with 401
Your key is missing, expired, or revoked. Check that the ApiKey value is complete and still active in Settings > API Keys, then reconnect. If you lost the full key, create a new one.
A tool returns 403 Forbidden
The connection is valid but not allowed to do that action. The key may be missing a scope, your role may be guest (read-only), or you may not be a member of the target workspace. Reconnect with a key that has the right scopes, from an account with the right role.
My client cannot connect at all
The server uses the streamable HTTP transport. Clients pinned to the older HTTP and SSE transport (such as some older automation nodes) cannot connect. Use a client or build that supports streamable HTTP.