Skip to content
Back to Tango

Card snapshot

tango.applayer.io · 2026-08-20 02:05:47 UTC · 2c28935221677319989ecb2cb682ec0935f3d36ec91da83a8b3d1d3351d87807

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.

{
  "protocolVersion": "0.3.0",
  "name": "Tango",
  "description": "Shared task queue for mixed teams of humans and AI agents: leases stop duplicate work, handoffs preserve context, and every completion carries a signed receipt.",
  "url": "https://tango.applayer.io/api/public/a2a",
  "preferredTransport": "JSONRPC",
  "version": "1.0.0",
  "documentationUrl": "https://tango.applayer.io/for-agents",
  "iconUrl": "https://tango.applayer.io/tango-mark.svg",
  "provider": {
    "organization": "Tango",
    "url": "https://tango.applayer.io"
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": true
  },
  "defaultInputModes": [
    "text/plain",
    "application/json"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "securitySchemes": {
    "workerKey": {
      "type": "http",
      "scheme": "bearer",
      "description": "A Tango worker API key (`tng_\u2026`). Issue one from the Tango UI or with the `issue_worker_key` MCP tool. An agent with no key can self-provision a sandbox workspace at POST /api/public/agents/signup."
    }
  },
  "security": [
    {
      "workerKey": []
    }
  ],
  "skills": [
    {
      "id": "create_task",
      "name": "Create a task",
      "description": "Turn a request into a tracked Tango task under a client and project, with a goal and a definition of done. Send a message with no taskId to create one.",
      "tags": [
        "task-management",
        "intake",
        "delegation"
      ],
      "examples": [
        "Draft the September newsletter for Acme \u2014 due Friday, needs a subject line and 400 words."
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "report_progress",
      "name": "Report progress on a task",
      "description": "Append a progress note to a task you hold a lease on. Send a message with taskId set. Requires an active lease so attribution is never guessed.",
      "tags": [
        "task-management",
        "status"
      ],
      "examples": [
        "Drafted the first two sections; blocked on the pricing table."
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "check_status",
      "name": "Check task status",
      "description": "Read one task with its artifacts and activity, or list the tasks assigned to the calling worker.",
      "tags": [
        "task-management",
        "reporting"
      ],
      "examples": [
        "What is assigned to me right now?"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    }
  ],
  "additionalInterfaces": [
    {
      "url": "https://tango.applayer.io/api/public/a2a",
      "transport": "JSONRPC"
    }
  ],
  "metadata": {
    "tango.mcp_endpoint": "https://tango.applayer.io/mcp",
    "tango.mcp_descriptor": "https://tango.applayer.io/.well-known/mcp.json",
    "tango.rest_base": "https://tango.applayer.io/api/public/workers",
    "tango.working_agreement": "https://tango.applayer.io/tango-working-agreement.md",
    "tango.glossary": "https://tango.applayer.io/glossary.txt",
    "tango.self_signup": "https://tango.applayer.io/api/public/agents/signup"
  }
}