{
  "$schema": "https://a2a.dev/schema/v1/agent-card.json",
  "spec_version": "1.0",
  "name": "opal",
  "display_name": "Opal",
  "version": "1.0.0",
  "description": "Conversational Solana trading agent. Live with real funds, non-custodial: manual trades are signed by the user's own wallet; automated rule buys are signed by Opal's key within a user-set, revocable spending limit. Stop-loss and take-profit levels always alert you. They also sell for you on one narrow path: a position a rule opened in your automation wallet with those levels set on the rule. Opal cannot sell from a wallet you hold yourself, and a level you add to any other position only alerts you. The skills listed on this card are read-only market data; the same endpoint also exposes `swap`, which executes a real-fund trade, to an authenticated caller.",
  "publisher": {
    "name": "Opal",
    "url": "https://heyopal.ai",
    "contact": "hey@heyopal.ai"
  },
  "url": "https://heyopal.ai",
  "endpoints": [
    {
      "protocol": "mcp",
      "url": "https://mcp.heyopal.ai",
      "transport": "streamable-http",
      "auth": "bearer"
    }
  ],
  "skills": [
    {
      "id": "top_tokens_by_volume",
      "name": "Top tokens by volume",
      "description": "Top N tokens by 24h trading volume from the latest snapshot cycle.",
      "inputs": ["limit"],
      "outputs": ["token_list"]
    },
    {
      "id": "token_snapshot",
      "name": "Token snapshot",
      "description": "Latest snapshot data for a specific token by symbol or address.",
      "inputs": ["query"],
      "outputs": ["token_snapshot"]
    },
    {
      "id": "token_price_history",
      "name": "Token price history",
      "description": "Recent price snapshots for a token over time, for trend analysis.",
      "inputs": ["query", "limit"],
      "outputs": ["price_history"]
    },
    {
      "id": "snapshot_stats",
      "name": "Snapshot stats",
      "description": "Summary statistics about the snapshot database: total snapshots, unique tokens, time range.",
      "inputs": [],
      "outputs": ["stats"]
    }
  ],
  "authentication": {
    "schemes": ["bearer"],
    "how_to_get_credentials": "https://heyopal.ai/docs/mcp"
  },
  "capabilities": {
    "streaming": true,
    "long_running_tasks": false,
    "push_notifications": false
  },
  "provenance": {
    "agent_type": "solana_trading_assistant",
    "custody": "non_custodial",
    "execution": "Real-fund market swaps via Jupiter, settled in the user's own wallet. Manual trades signed by the user's wallet; automated rule buys signed by Opal's key within a user-set, revocable on-chain spending limit. Stop-loss and take-profit levels always alert you. They also sell for you on one narrow path: a position a rule opened in your automation wallet with those levels set on the rule. Opal cannot sell from a wallet you hold yourself, and a level you add to any other position only alerts you.",
    "fees": "Flat 0.5% of trade value on every trade."
  },
  "docs": {
    "overview": "https://heyopal.ai/docs",
    "mcp_tools": "https://heyopal.ai/docs/mcp",
    "llms_txt": "https://heyopal.ai/llms.txt"
  }
}
