Skip to content
Back to BibiGPT

Card snapshot

bibigpt.co · 2026-10-02 11:22:52 UTC · 997b252f89fd80945572b4d3b0beb9ffce3b974b449a46d778ba1ac22c8daca6

This is a frozen copy of the agent's agent-card.json as we observed it at the timestamp above. We capture a new snapshot every time the card's content hash changes. Useful for: forensic drift analysis, verifying downstream callers see the right version, reproducing routing decisions made historically.

{
  "$schema": "https://a2a-protocol.org/schemas/agent-card/0.2.json",
  "protocolVersion": "0.2",
  "name": "BibiGPT",
  "description": "AI \u97f3\u89c6\u9891\u77e5\u884c\u52a9\u7406 \u2014 Paste any video/audio URL (YouTube, Bilibili, podcasts, TikTok, X, Coursera, \u2026) or upload a local file to get AI-powered summaries, transcripts, mind maps, chapter breakdowns, and visual content analysis. 30 + platforms supported, 5 languages, served by 1M+ users since 2023.",
  "version": "1.0.0",
  "url": "https://bibigpt.co/api/mcp",
  "homepage": "https://bibigpt.co",
  "documentationUrl": "https://docs.bibigpt.co",
  "iconUrl": "https://bibigpt.co/icons/icon_512x512.png",
  "preferredTransport": "streamable-http",
  "supportedInterfaces": [
    {
      "transport": "streamable-http",
      "url": "https://bibigpt.co/api/mcp",
      "protocol": "mcp",
      "description": "Hosted MCP endpoint with OAuth2 + Bearer token auth"
    },
    {
      "transport": "https",
      "url": "https://bibigpt.co/api/openapi.json",
      "protocol": "openapi",
      "description": "tRPC-derived OpenAPI 3 spec for direct REST integration"
    },
    {
      "transport": "https",
      "url": "https://bibigpt.co/api/ask",
      "protocol": "nlweb",
      "description": "Natural-language Q&A endpoint (NLWeb spec) with optional SSE streaming"
    }
  ],
  "additionalInterfaces": [
    {
      "transport": "streamable-http",
      "url": "https://bibigpt.co/api/mcp",
      "protocol": "mcp",
      "description": "Hosted MCP endpoint with OAuth2 + Bearer token auth"
    },
    {
      "transport": "https",
      "url": "https://bibigpt.co/api/openapi.json",
      "protocol": "openapi",
      "description": "tRPC-derived OpenAPI 3 spec for direct REST integration"
    },
    {
      "transport": "https",
      "url": "https://bibigpt.co/api/ask",
      "protocol": "nlweb",
      "description": "Natural-language Q&A endpoint (NLWeb spec) with optional SSE streaming"
    }
  ],
  "provider": {
    "name": "JimmyLv (\u5415\u7acb\u9752)",
    "url": "https://bibigpt.co",
    "contact": {
      "email": "support@bibigpt.co",
      "twitter": "https://x.com/Jimmy_JingLv",
      "github": "https://github.com/JimmyLv"
    }
  },
  "capabilities": {
    "streaming": true,
    "pushNotifications": false,
    "stateTransitionHistory": true
  },
  "defaultInputModes": [
    "text",
    "url"
  ],
  "defaultOutputModes": [
    "text",
    "markdown",
    "json"
  ],
  "securitySchemes": {
    "oauth2": {
      "type": "oauth2",
      "flows": {
        "authorizationCode": {
          "authorizationUrl": "https://bibigpt.co/api/auth/authorize",
          "tokenUrl": "https://bibigpt.co/api/auth/token",
          "scopes": {
            "read": "Read user library, summaries, and content"
          }
        }
      }
    },
    "bearerToken": {
      "type": "http",
      "scheme": "bearer",
      "description": "Long-lived API token from https://bibigpt.co/dashboard/api"
    }
  },
  "security": [
    {
      "oauth2": [
        "read"
      ]
    },
    {
      "bearerToken": []
    }
  ],
  "skills": [
    {
      "id": "summarize_video",
      "name": "Summarize Video / Audio",
      "description": "Generate a structured summary with timestamps, key points and chapters from any supported video or audio URL.",
      "inputModes": [
        "url"
      ],
      "outputModes": [
        "markdown",
        "json"
      ],
      "tags": [
        "summarization",
        "video",
        "audio",
        "podcast"
      ],
      "examples": [
        {
          "input": "https://www.bilibili.com/video/BV1xx411c7mD",
          "output": "Markdown summary with timestamps"
        },
        {
          "input": "https://youtu.be/dQw4w9WgXcQ",
          "output": "Bullet-point key takeaways"
        }
      ]
    },
    {
      "id": "summarize_video_with_config",
      "name": "Summarize with Custom Config",
      "description": "Same as summarize_video but lets the agent specify prompt template, output language, model, length and persona.",
      "inputModes": [
        "url",
        "text"
      ],
      "outputModes": [
        "markdown",
        "json"
      ]
    },
    {
      "id": "summarize_by_chapter",
      "name": "Summarize by Chapter",
      "description": "Long-video chapter-by-chapter breakdown with timestamps and per-chapter summary blocks.",
      "inputModes": [
        "url"
      ],
      "outputModes": [
        "markdown",
        "json"
      ]
    },
    {
      "id": "get_subtitle",
      "name": "Get Full Transcript / Subtitles",
      "description": "Return full transcript with timestamps for any supported source. Auto-detects existing captions or transcribes via ASR.",
      "inputModes": [
        "url"
      ],
      "outputModes": [
        "text",
        "json"
      ]
    },
    {
      "id": "create_summary_task",
      "name": "Create Async Summary Task",
      "description": "For very long videos (>30 min), kick off an async job and return a task id. Pair with get_task_status.",
      "inputModes": [
        "url"
      ],
      "outputModes": [
        "json"
      ]
    },
    {
      "id": "get_task_status",
      "name": "Get Async Task Status",
      "description": "Poll status / retrieve result for an async summary task created via create_summary_task.",
      "inputModes": [
        "text"
      ],
      "outputModes": [
        "json"
      ]
    }
  ],
  "supportsAuthenticatedExtendedCard": true,
  "tags": [
    "video-summarization",
    "audio-transcription",
    "podcast",
    "knowledge-graph",
    "agent-native",
    "mcp",
    "oauth2"
  ]
}