# Connect an agent to your Brand DNA

Canonical: https://jinn.works/docs/mcp

The Jinn gateway is a single, read-only MCP endpoint. Point any MCP client at it with a bearer token and your agents can read your brand — voice, positioning, messaging, product, competitive playbook, and design system — before they generate a word.

Endpoint: https://app.jinn.works/api/mcp

## Get a token

Start with Jinn Agents: connect your brand and Jinn extracts your Brand DNA — the record every Connected token reads. Tokens are self-serve — mint, rotate, and revoke them in your token panel. Every self-serve token is read-only and scoped to your own brand.

## Claude Code

Set JINN_MCP_TOKEN in your environment, then: claude mcp add --transport http jinn https://app.jinn.works/api/mcp --header "Authorization: Bearer $JINN_MCP_TOKEN"

## Cursor

One-click install — you paste your token into Cursor afterwards (the link never carries a real secret): Add Jinn to Cursor

## Claude Desktop / any MCP client

Add to your client’s MCP config, replacing the placeholder with your token: {
  "mcpServers": {
    "jinn": {
      "url": "https://app.jinn.works/api/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_JINN_MCP_TOKEN"
      }
    }
  }
}

## Tool reference

- **get_token_context** — What your token can reach: brand slugs, scopes, audience, tier, subscription status, expiry, and a renewal_url. Call it first — no arguments. Read tier for your plan; audience is tool visibility and is "public" for every customer token.
- **get_brand_dna** — Your full typed Brand DNA by slug — identity, story, archetype, positioning, audience, voice, messaging pillars, product, plus snapshot metadata.
- **get_brand_kit** — Render-ready brand kit by slug — colors, fonts, logo, name, spacing.
- **get_brand_products** — Your per-SKU product details by slug — name, description, category, form factor, ingredients, certifications, dimensions, weight, product URL. Empty products list means none captured yet.
- **get_brand_design_md** — Your brand's DESIGN.md — an agent-readable design system — by slug.
- **get_brand_design_tokens** — Design tokens as DTCG JSON by slug — colors, typography, spacing, radius, motion.
- **get_brand_dna_public** — The bounded public Brand DNA projection by slug (identity, voice, positioning angle, messaging pillars, pain points, tribes). This is what demo tokens read.
- **ask_brand** — A natural-language question about your brand in, the canonical facts that bear on it out — your agent writes the answer from them. Names the gaps your record can't answer so the agent says so instead of guessing. Question text is logged against the brand for its owner to review.
- **ping** — Smoke test — verifies gateway wiring end-to-end. No arguments.

## Error taxonomy

- **token_malformed** — The bearer isn't a well-formed Jinn token. Fix the header; don't retry as-is.
- **token_invalid** — No matching live token — the secret is wrong or was never issued.
- **token_revoked** — The token was explicitly revoked. Mint a new one in the panel.
- **token_expired** — The token or its subscription lapsed. The error carries a renewal_url — renew, then reconnect (see Renewal below).

Machine-readable index: https://jinn.works/llms.txt · https://jinn.works/openapi.json
