---
name: brandfetch
description: Fetch brand logos, colors, fonts, firmographics, and grounded brand context for 50M+ brands — by domain, company name, stock ticker, ISIN, or crypto symbol. Use when a task needs a company's logo, visual identity, full brand profile, or verified brand context for LLM output. Works with an API key, or with no account at all by paying per request.
---

# Brandfetch

Brandfetch is the brand identity layer for modern products and AI. Four REST APIs plus an MCP server serve real-time logos, colors, fonts, full brand profiles, and grounded brand context for 50M+ brands — sourced first-party from brand owners.

Work through the paths in order: pick an API (A), get credentials (B), then call it over REST (C) or MCP (D).

## Path A — pick the API

| Task | API | Auth | Cost / quota |
| --- | --- | --- | --- |
| Show a company logo | Logo API | `?c={CLIENT_ID}` in the URL | Free up to 1M requests/month |
| Resolve a company name to a domain | Brand Search API | `?c={CLIENT_ID}` in the URL | Free up to 500K requests/month |
| Full visual + firmographic profile — logos, colors, fonts, employees, tickers | Brand API | `Authorization: Bearer {API_KEY}` | 1 credit per call |
| Grounded brand context for LLM output — mission, voice, positioning, audience, competitors | Brand Context API | `Authorization: Bearer {API_KEY}` | 1 credit per call |

Brand API and Brand Context API share one credit pool — 100 brand fetches (one-time) on the Free plan, 2,500+ per month on paid plans. Pull both for a complete brand record in two calls.

## Path B — get credentials

Credentials come from a one-time browser sign-up by your user, or from a payment — with no user to ask, [pay instead](#no-user-pay-instead) and one call buys an API key. Full reference: [brandfetch.com/auth.md](https://brandfetch.com/auth.md).

1. Send the user to [developers.brandfetch.com/register](https://developers.brandfetch.com/register) (Free plan, no credit card).
2. The user copies the API key and client ID from [developers.brandfetch.com/dashboard/keys](https://developers.brandfetch.com/dashboard/keys).
3. Store them as `BRANDFETCH_API_KEY` and `BRANDFETCH_CLIENT_ID`.
4. Verify the API key — free, never consumes credits. A `200` means the key is valid:

```bash
curl -H "Authorization: Bearer $BRANDFETCH_API_KEY" \
  "https://api.brandfetch.io/v2/viewer"
```

### No user? Pay instead

The Brand API and the Brand Context API take a payment in place of an API key. Send the request with no `Authorization` header and the `402` names the price two ways: an [x402](https://x402.org) challenge in `PAYMENT-REQUIRED` (USDC on Base, $0.10 per request on either API) and an [MPP](https://mpp.dev) challenge in `WWW-Authenticate: Payment` (USDC.e on Tempo, settled through Stripe). Pay one and retry — `PAYMENT-SIGNATURE` for x402, `Authorization: Payment …` for MPP; an MPP client such as `npx mppx@latest` or the Tempo CLI does the round trip for you:

```bash
curl -i "https://api.brandfetch.io/v2/brands/domain/shopify.com"   # 402 with both challenges
```

For many requests, buy standing access once — `POST https://api.brandfetch.io/v2/agents/access?usd=5` paid the same way (a wallet, or a card over MPP) returns an API key with 20 prepaid credits per dollar; use it exactly as in Path C. Full flow: [docs.brandfetch.com/agents/overview](https://docs.brandfetch.com/agents/overview).

## Path C — call the REST API

Logo — drop the URL in an `<img>` tag or fetch it directly:

```bash
curl "https://cdn.brandfetch.io/shopify.com?c=$BRANDFETCH_CLIENT_ID"
```

Name → domain:

```bash
curl "https://api.brandfetch.io/v2/search/shopify?c=$BRANDFETCH_CLIENT_ID"
```

Full brand profile — the path takes `domain`, `ticker`, `isin`, or `crypto` plus the identifier:

```bash
curl -H "Authorization: Bearer $BRANDFETCH_API_KEY" \
  "https://api.brandfetch.io/v2/brands/domain/shopify.com"
```

Grounded brand context:

```bash
curl -H "Authorization: Bearer $BRANDFETCH_API_KEY" \
  "https://api.brandfetch.io/v2/context/shopify.com"
```

Cached brands return near-instantly. A domain built live for the first time targets 10–12 seconds on the Brand Context API — set your timeout accordingly.

## Path D — connect over MCP

The MCP server exposes brand lookup, logo URLs, brand search, and Brandfetch documentation as tools — no REST wiring needed.

```bash
claude mcp add brandfetch --transport http https://mcp.brandfetch.io/mcp
```

Auth is OAuth — the user signs in when the browser opens. Clients without OAuth support send an MCP token from [the dashboard](https://developers.brandfetch.com/dashboard/keys) as `Authorization: Bearer {MCP_TOKEN}`. Snippets for Claude Desktop, Cursor, VS Code, Windsurf, and Codex: [brandfetch.com/developers/mcp](https://brandfetch.com/developers/mcp).

## More

- [brandfetch.com/llms.txt](https://brandfetch.com/llms.txt) — full machine-readable overview: every API, pricing, FAQ, agent instructions.
- [brandfetch.com/auth.md](https://brandfetch.com/auth.md) — authentication reference.
- [brandfetch.com/.well-known/api-catalog](https://brandfetch.com/.well-known/api-catalog) — RFC 9727 catalog: every public API with its OpenAPI description, documentation, and status.
- [brandfetch.com/.well-known/agent-skills/index.json](https://brandfetch.com/.well-known/agent-skills/index.json) — Agent Skills discovery index: every skill this origin publishes, with a SHA-256 digest for each.
- [docs.brandfetch.com](https://docs.brandfetch.com) — request and response schemas.
- [Playground](https://brandfetch.com/developers/playground) — look up any company instantly.
