Back to Docs
MCP

MCP Quickstart

Create a token, store it as VAYBEL_PAT, connect MCP, and run your first skill-backed workflow.

Updated 2026-10-10

Five steps from zero to a working connection. Claude Code users should use VAYBEL_PAT once for both the MCP server and the official Vaybel Skills plugin.

Step

Create a Personal Access Token

Open Dashboard → Settings → API & MCP. Click Create token, give it a label, and pick scopes. All current public scopes are selected by default so the MCP server and Vaybel Skills work immediately. Uncheck scopes only when you are intentionally limiting a token.

Shown Once

The raw token is displayed exactly once at creation. Copy it immediately; we store only a SHA256 hash and can't recover the original after the dialog closes.

Step

Recommended: Claude Code + Vaybel Skills

Store the token once in Claude Code settings:

json
{
  "env": {
    "VAYBEL_PAT": "vbl_pat_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
  }
}

Then add the Vaybel MCP server using that environment variable:

bash
claude mcp add-json vaybel '{"type":"http","url":"https://mcp.vaybel.com/","headers":{"Authorization":"Bearer ${VAYBEL_PAT}"}}' --scope user

Install the official Vaybel Skills plugin:

text
/plugin marketplace add vaybel/skills
/plugin install vaybel@vaybel

Restart Claude Code after changing settings or plugin state.

Step

Other AI assistants

Vaybel uses the hosted HTTP endpoint https://mcp.vaybel.com/ with a Personal Access Token in the Authorization: Bearer header. Each assistant has its own configuration format; a config copied from another client may not work.

Codex: add the server to your Codex MCP configuration. Make VAYBEL_PAT available in the environment that starts Codex:

toml
[mcp_servers.vaybel]
url = "https://mcp.vaybel.com/"
bearer_token_env_var = "VAYBEL_PAT"

Follow the Codex MCP guide for the configuration location and setup options for your Codex client.

Cursor: use its remote MCP configuration and environment-variable syntax:

json
{
  "mcpServers": {
    "vaybel": {
      "url": "https://mcp.vaybel.com/",
      "headers": {
        "Authorization": "Bearer ${env:VAYBEL_PAT}"
      }
    }
  }
}

See Cursor’s MCP guide for project and global settings. Make the environment variable available to Cursor before connecting.

Perplexity: check your account’s custom remote connector options. Select Streamable HTTP and verify that its authentication settings can send your Vaybel token as a Bearer header. Connector availability depends on the account and organization settings. This Vaybel connection has not yet been verified end to end in Perplexity.

For other assistants, check remote HTTP and Bearer-token support in the client’s own instructions. Restart clients that load their configuration at startup, then verify the connection in the next step.

Keep The Token Out Of Git

Keep your raw token in the client’s credential settings or environment, not in a committed config or product brief. Environment-variable syntax differs between clients; the examples above are not interchangeable.

Step

Verify the connection with ping

Ask your agent to call the ping tool, or send the JSON-RPC frame directly:

bash
curl -N -X POST https://mcp.vaybel.com/ \
  -H "Authorization: Bearer $VAYBEL_PAT" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ping","arguments":{"echo":"hello"}}}'

A successful response carries structuredContent.echo = "hello". The dual Accept header is required — sending only application/json returns 406. A 401 means the Authorization header didn't land — re-check your client config and restart. Any other error shape: head to Tool Reference to match against the expected return.

Step

Make a real call

Prerequisites For The Full Workflow

Most MCP tools require a Starter plan or higher — ping, credits.check, the catalog tools, brand_dna.get and the drop read tools work without one (Growth unlocks optimize / content / social / product videos / insights). Generation costs credits (credits.check shows your balance; Credit Charging lists each cost). Trend tools need a saved Brand DNA (Dashboard → Settings → Brand) to have data. listing.create needs the target sales channel connected in the dashboard first — call integration.list to see which sales channels, fulfillment providers, and social accounts are connected before you try, otherwise it fails with a clear "channel not connected" error. TikTok Shop publishing additionally needs a warehouse on the listing: pick one from listing.list_warehouses and assign it with listing.update.

From Claude Code with Vaybel Skills installed, run:

text
/vaybel:launch-product "washed archive tee graphic"

Or from any MCP client, ask the agent something concrete:

Find the top trend in my brand's niche this week. Pick a hoodie blank, design three concepts on it, render Pro mockups, and create a draft listing for TikTok Shop.

The agent picks tools from the full surface — trend.list, catalog.list_blanks, design.generate, mockup.generate, integration.list, listing.create — and chains them automatically. Generation tools return a handle; the agent polls <domain>.get_generation(handle, wait_sec) until done (waits cap at 50s per call). Add content.generate to produce a video, slideshow, carousel, or single-photo post (then social_post.generate + social_post.publish to fan out to TikTok / Instagram / YouTube / X), or optimize.import_product to import a Printify product you already have. The Tool Reference groups every tool by workflow.


Want the full tool surface? See Tool Reference. Planning to run this in production? Read Authentication & Scopes first.

Choose the blank before generating

Try: “Help me choose a lightweight tee with a closer fit and a broad color range. Compare the evidence and tradeoffs before I decide.”

The agent discovers canonical products with catalog.list_blanks, reads suitability and sources with catalog.get_blank, and compares two to four with catalog.compare_blanks. It can inspect materials, sizing or construction one section at a time. Research snapshots and blank properties stay separate from provider printing, shipping and current stock. These catalog calls are read-only; generation is a separate step.