brandfetch-mcp-server
Health Warn
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 9 GitHub stars
Code Pass
- Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
No AI report is available for this listing yet.
🔥 Official code of the Brandfetch MCP Server - Provides access to all the API products from Brandfetch.
Brandfetch MCP Server
The official Model Context Protocol server for
Brandfetch. It gives AI assistants access to brand
search, company data, logos and design assets, and LLM-ready brand context from
the Brandfetch API.
- Learn more: https://brandfetch.com/developers/mcp
- Full documentation: https://docs.brandfetch.com/mcp/overview
Tools
| Tool | Description |
|---|---|
brand_search |
Search for brands by name using Brandfetch's search index. |
get_brand |
Look up full brand data by domain, email, ticker, ISIN, or crypto symbol; renders the interactive brand card on MCP Apps hosts. |
get_brand_data |
The same brand data with no card — for logo walls, multi-brand work, and data that feeds generated content. |
enrich_transaction |
Identify a merchant brand from a credit-card or bank-statement string. |
get_brand_context |
Get LLM-ready brand context for a domain — voice, audience, positioning, style. |
build_logo_urls |
Construct Brandfetch Logo CDN URLs for one or more brands (no API call). |
send_feedback |
Report bugs, wrong or stale brand data, or missing capabilities to Brandfetch. |
Interactive brand card (MCP Apps)
On hosts that support the MCP Apps extension
(claude.ai, Claude Desktop, ...), get_brand results render as an interactive
brand card: logo preview, format switcher (SVG/PNG/WebP/...), download and
copy-URL actions. Hosts without Apps support fall back to the regular JSON tool
result. get_brand_data returns the same brand data without the card, so a
logo wall of six brands is six data calls rather than six cards; the model picks
between the two by their descriptions. The widget source lives inui/ and is served by the server as theui://brandfetch/brand-card.html resource.
Quick start (hosted server)
The easiest way to use this server is to connect to the Brandfetch-hosted
endpoint — no install, no infrastructure:
https://mcp.brandfetch.io/mcp
Authentication uses a Brandfetch MCP token (a bf1. bearer token). Generate one
from the Keys and MCP page in the
Brandfetch dashboard, or connect via OAuth
from a client that supports it.
Claude Desktop / Claude Code
{
"mcpServers": {
"brandfetch": {
"type": "http",
"url": "https://mcp.brandfetch.io/mcp",
"headers": {
"Authorization": "Bearer bf1.YOUR_TOKEN"
}
}
}
}
Cursor
Add to ~/.cursor/mcp.json (or the project .cursor/mcp.json):
{
"mcpServers": {
"brandfetch": {
"url": "https://mcp.brandfetch.io/mcp",
"headers": {
"Authorization": "Bearer bf1.YOUR_TOKEN"
}
}
}
}
Clients that support OAuth can instead point at https://mcp.brandfetch.io/mcp
with no token and complete the authorization flow in the browser.
Quota errors
get_brand, get_brand_data, enrich_transaction, and get_brand_context consume API credits
from your plan; brand_search and build_logo_urls don't and keep working
when your credits run out.
- 429 "API quota exhausted" — your key has used all of its API credits.
Check usage or upgrade in the Brandfetch dashboard. - 403 "Forbidden" — the key has no available API credits or lacks access
to that endpoint. The key itself may be valid, so check your plan and key
status in the dashboard before rotating it.
Self-hosting
This is an HTTP (streamable-http) MCP server built with
FastMCP. You can run your own instance with
Docker.
docker build -t brandfetch-mcp-server .
docker run --rm -p 8080:8080 brandfetch-mcp-server
The server then listens on http://localhost:8080/mcp. Point your MCP client at
that URL and send your Brandfetch credentials as a Bearer token.
The
Dockerfilebundles the AWS Lambda Web Adapter
and a fewAWS_LWA_*environment variables. These are inert outside of AWS
Lambda and can be ignored (or removed) for a plain container/host deployment.
Running without Docker
uv sync
uv run uvicorn src.main:app --host 0.0.0.0 --port 8080
Development
Requires uv and Python 3.11.
uv sync # install dependencies
uv run pytest # run the tests
uv run ruff check . # lint
uv run ruff format . # format
License
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found