Developer docs

Connect EmblemAI over hosted MCP.

Use the hosted MCP endpoint when you want Claude Code, GitHub Copilot CLI, or another MCP client to call EmblemAI tools without building a wrapper around the app.

Quickstart

The shortest path is simple: copy a vault API key from the app, point your client at POST /api/mcp, and send that header from the first request.

  1. Log in to EmblemAI.
  2. Open Settings -> Vault Access Key and copy your key.
  3. Configure your client to call https://emblemvault.ai/api/mcp.
  4. Send either x-api-key or Authorization: Bearer <JWT>.

Hosted MCP is auth-first. Your client needs headers on initialize, tools/list, and tools/call.

Public endpoint

Base URL: https://emblemvault.ai/api/mcp

  • Transport: hosted HTTP MCP
  • Protocol version: 2025-06-18
  • Methods: initialize, ping, tools/list, tools/call
  • CORS preflight is enabled for hosted client integrations.

Authentication

Send exactly one of these auth surfaces on every MCP request:

  • x-api-key: <apiKey>
  • Authorization: Bearer <JWT> — either a user-issued Emblem token or one obtained via the hosted OAuth 2.0 flow at api.emblemvault.ai/.well-known/oauth-authorization-server

API key is the easiest path for scripts and server-to-server calls. OAuth is the right choice for interactive clients like Claude Code — it handles install, consent, and token refresh without any secret to paste.

What the hosted MCP exposes in v1

The first public catalog is deliberately read-first. It gives MCP clients a strong research surface without turning the endpoint into an unreviewed value-moving side door.

Included today
  • Coinglass market data
  • advanced search and research tools
  • Nansen analytics
  • wallet and balance reads across major chains
  • Bitcoin, ordinals, runes, and stamp research
  • OpenSea and Emblem read-safe NFT surfaces
Held back for now
  • transfers and sends
  • swaps and buys
  • order placement and cancellation
  • NFT listing or purchase flows
  • vault mutations and other value-moving actions

Smoke test the endpoint

Want to verify auth and protocol handling before you wire a client? Start with a plain tools/list request.

curl https://emblemvault.ai/api/mcp \
  -H 'Content-Type: application/json' \
  -H 'MCP-Protocol-Version: 2025-06-18' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/list",
    "params": {}
  }'

Copy-paste client configs

These are the fastest review-ready ways to connect the hosted endpoint in real clients.

GitHub Copilot CLI

Save this as ~/.copilot/mcp-config.json or pass it session-only with --additional-mcp-config @file.

{
  "mcpServers": {
    "emblemai": {
      "type": "http",
      "url": "https://emblemvault.ai/api/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      },
      "tools": ["*"]
    }
  }
}
Claude Code

The fastest path — no API key, no secret to paste. Run the command and Claude Code walks you through the hosted OAuth flow in your browser:

claude mcp add --transport http EmblemAI https://emblemvault.ai/api/mcp

Prefer an API key (for headless agents or CI)? Use the key-based form:

claude mcp add --transport http EmblemAI https://emblemvault.ai/api/mcp --header "x-api-key: YOUR_API_KEY"

If you want a shareable project config, use a standard.mcp.json file with the same hosted endpoint:

{
  "mcpServers": {
    "emblemai": {
      "type": "http",
      "url": "https://emblemvault.ai/api/mcp",
      "headers": {
        "x-api-key": "YOUR_API_KEY"
      }
    }
  }
}
Claude Desktop bridge config

If your Claude Desktop build only accepts local stdio MCP servers, bridge the hosted endpoint with mcp-remote inside claude_desktop_config.json.

{
  "mcpServers": {
    "emblemai": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://emblemvault.ai/api/mcp",
        "--header",
        "x-api-key:${EMBLEM_AI_API_KEY}"
      ],
      "env": {
        "EMBLEM_AI_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

If your Claude Desktop build exposes direct remote MCP connectors, use the same hosted URL and auth header instead of the bridge.

Client notes worth knowing

  • Tested locally in GitHub Copilot CLI and Claude Code.
  • Copilot CLI tool allowlists flatten to names like emblemai-getCoinglassCDRIIndex.
  • Claude Code tool allowlists use names like mcp__emblemai__getCoinglassCDRIIndex.
  • Because the endpoint is auth-first, clients must send headers before they ask for tools/list.

Related resources