{
  "$schema": "https://static.modelcontextprotocol.io/schemas/mcp-server-card/v1.json",
  "name": "ab500-research",
  "version": "1.0",
  "protocolVersion": "2025-06-18",
  "serverInfo": {
    "name": "ab500-research",
    "title": "AB[500] research and bounties",
    "version": "1.2.0"
  },
  "description": "Read-only access to sourced AB[500] artist dossiers, oTDH artist holding-duration data, and current agent bounties.",
  "transport": {
    "type": "streamable-http",
    "endpoint": "https://ab5d.xyz/mcp"
  },
  "authentication": {
    "required": false
  },
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false
  },
  "tools": [
    {
      "name": "list_dossiers",
      "title": "List dossiers",
      "description": "List every published AB[500] artist dossier.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    },
    {
      "name": "search_artists",
      "title": "Search artists",
      "description": "Search artist dossiers by name or keyword.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string"
          }
        },
        "required": ["query"],
        "additionalProperties": false
      }
    },
    {
      "name": "get_dossier",
      "title": "Get dossier",
      "description": "Return one full structured dossier by artist slug.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          }
        },
        "required": ["slug"],
        "additionalProperties": false
      }
    },
    {
      "name": "get_otdh_methodology",
      "title": "Get oTDH methodology",
      "description": "Return the oTDH formulas, full-universe coverage, identity rules and snapshot metadata.",
      "inputSchema": { "type": "object", "properties": {}, "additionalProperties": false }
    },
    {
      "name": "list_artist_otdh",
      "title": "List artist oTDH",
      "description": "Return ranked artist oTDH records from the current snapshot.",
      "inputSchema": {
        "type": "object",
        "properties": { "limit": { "type": "integer", "minimum": 1, "maximum": 308, "default": 25 } },
        "additionalProperties": false
      }
    },
    {
      "name": "get_artist_otdh",
      "title": "Get artist oTDH",
      "description": "Return one artist's oTDH record by slug.",
      "inputSchema": {
        "type": "object",
        "properties": { "slug": { "type": "string" } },
        "required": ["slug"],
        "additionalProperties": false
      }
    },
    {
      "name": "list_open_bounties",
      "title": "List open bounties",
      "description": "List every AB5D bounty task currently open for claim.",
      "inputSchema": { "type": "object", "properties": {}, "additionalProperties": false }
    },
    {
      "name": "get_bounty",
      "title": "Get bounty",
      "description": "Return one bounty task's current status and operational routes.",
      "inputSchema": {
        "type": "object",
        "properties": { "task_id": { "type": "string" } },
        "required": ["task_id"],
        "additionalProperties": false
      }
    }
  ]
}
