Back to ATP Agent (agents-atp)

Card snapshot

agents-atp.8004-agent.io · 2026-05-23 09:32:08 UTC · 6b37789c7e9cb60c121c9ac9f28a3e26db66f9b3deedb1dfac5869ef2895d5d0

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": "1.0",
  "name": "ATP Agent (agents-atp)",
  "description": "An ATP agent for A2A communication",
  "version": "0.1.0",
  "supportedInterfaces": [
    {
      "url": "https://agents-atp.8004-agent.io/api/a2a",
      "protocolBinding": "JSONRPC"
    }
  ],
  "provider": {
    "organization": "ATP",
    "url": "https://agents-atp.8004-agent.io"
  },
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false,
    "extensions": [
      {
        "uri": "https://eips.ethereum.org/EIPS/eip-8004",
        "description": "ERC-8004 feedbackAuth issuance metadata",
        "required": false,
        "params": {
          "trustModels": [
            "feedback"
          ],
          "feedbackDataURI": ""
        }
      },
      {
        "uri": "https://schema.oasf.outshift.com/",
        "description": "OASF/OASF extension metadata: domains + skill taxonomy overlay (ATP/Agentic Trust).",
        "required": false,
        "params": {
          "oasfExtension": true,
          "domains": [],
          "skills": [],
          "skillOverlay": {
            "governance_and_trust/trust/trust_feedback_authorization": [
              "trust.feedback.authorization"
            ],
            "atp.feedback.request": [
              "trust.feedback.authorization",
              "collaboration"
            ],
            "atp.feedback.getRequests": [
              "trust.feedback.authorization",
              "collaboration"
            ],
            "atp.feedback.getRequestsByAgent": [
              "trust.feedback.authorization",
              "collaboration"
            ],
            "atp.feedback.markGiven": [
              "trust.validate.name",
              "collaboration"
            ],
            "atp.feedback.requestapproved": [
              "trust.feedback.authorization",
              "collaboration"
            ],
            "governance_and_trust/trust/trust_validate_name": [
              "trust.validate.name",
              "collaboration"
            ],
            "governance_and_trust/trust/trust_validate_account": [
              "trust.validate.account",
              "collaboration"
            ],
            "governance_and_trust/trust/trust_validate_app": [
              "trust.validate.app",
              "collaboration"
            ],
            "atp.inbox.sendMessage": [
              "agent_interaction.request_handling",
              "integration.protocol_handling",
              "collaboration"
            ],
            "atp.inbox.listClientMessages": [
              "agent_interaction.request_handling",
              "collaboration"
            ],
            "atp.inbox.listAgentMessages": [
              "agent_interaction.request_handling",
              "collaboration"
            ],
            "atp.inbox.markRead": [
              "agent_interaction.request_handling",
              "collaboration"
            ],
            "joinValidationAgentsCollection": [
              "validation_collection/eligibility_evaluate",
              "validation_collection/evidence_bundle_prepare",
              "validation_collection/membership_request_submit",
              "validation_collection/membership_status_monitor"
            ]
          }
        }
      }
    ]
  },
  "defaultInputModes": [
    "text/plain"
  ],
  "defaultOutputModes": [
    "text/plain",
    "application/json"
  ],
  "skills": [
    {
      "id": "governance_and_trust/trust/trust_feedback_authorization",
      "name": "governance_and_trust/trust/trust_feedback_authorization",
      "tags": [
        "erc8004",
        "feedback",
        "auth",
        "a2a",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust"
      ],
      "examples": [
        "Client requests feedbackAuth after receiving results"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Issue a signed ERC-8004 feedbackAuth for a client to submit feedback"
    },
    {
      "id": "governance_and_trust/trust/trust_validate_name",
      "name": "governance_and_trust/trust/trust_validate_name",
      "tags": [
        "erc8004",
        "validation",
        "attestation",
        "a2a",
        "oasfExtension:true",
        "oasf:trust.validate.name",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Submit a validation response for a pending validation request"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Submit a validation response (attestation) using a configured session package."
    },
    {
      "id": "governance_and_trust/trust/trust_validate_account",
      "name": "governance_and_trust/trust/trust_validate_account",
      "tags": [
        "erc8004",
        "validation",
        "attestation",
        "a2a",
        "oasfExtension:true",
        "oasf:trust.validate.account",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Submit a validation response for a pending validation request"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Submit a validation response (attestation) using a configured session package."
    },
    {
      "id": "governance_and_trust/trust/trust_validate_app",
      "name": "governance_and_trust/trust/trust_validate_app",
      "tags": [
        "erc8004",
        "validation",
        "attestation",
        "a2a",
        "oasfExtension:true",
        "oasf:trust.validate.app",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Submit a validation response for a pending validation request"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Submit a validation response (attestation) using a configured session package."
    },
    {
      "id": "governance_and_trust/alliance/join_alliance",
      "name": "governance_and_trust/alliance/join_alliance",
      "tags": [
        "governance",
        "alliance",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Join an alliance"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Join an alliance"
    },
    {
      "id": "governance_and_trust/alliance/leave_alliance",
      "name": "governance_and_trust/alliance/leave_alliance",
      "tags": [
        "governance",
        "alliance",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Leave an alliance"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Leave an alliance"
    },
    {
      "id": "governance_and_trust/alliance/verify_alliance_membership",
      "name": "governance_and_trust/alliance/verify_alliance_membership",
      "tags": [
        "governance",
        "alliance",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Verify alliance membership"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Verify alliance membership"
    },
    {
      "id": "governance_and_trust/delegation/add_delegation",
      "name": "governance_and_trust/delegation/add_delegation",
      "tags": [
        "governance",
        "delegation",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Add a delegation"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Add a delegation"
    },
    {
      "id": "governance_and_trust/delegation/revoke_delegation",
      "name": "governance_and_trust/delegation/revoke_delegation",
      "tags": [
        "governance",
        "delegation",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Revoke a delegation"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Revoke a delegation"
    },
    {
      "id": "governance_and_trust/delegation/verify_delegation",
      "name": "governance_and_trust/delegation/verify_delegation",
      "tags": [
        "governance",
        "delegation",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Verify a delegation"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Verify a delegation"
    },
    {
      "id": "governance_and_trust/membership/add_member",
      "name": "governance_and_trust/membership/add_member",
      "tags": [
        "governance",
        "membership",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Add a member"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Add a member"
    },
    {
      "id": "governance_and_trust/membership/remove_member",
      "name": "governance_and_trust/membership/remove_member",
      "tags": [
        "governance",
        "membership",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Remove a member"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Remove a member"
    },
    {
      "id": "governance_and_trust/membership/verify_membership",
      "name": "governance_and_trust/membership/verify_membership",
      "tags": [
        "governance",
        "membership",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Verify membership"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Verify membership"
    },
    {
      "id": "oasf:trust.validation.delegation",
      "name": "oasf:trust.validation.delegation",
      "tags": [
        "erc8092",
        "delegation",
        "validation",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Issue an ERC-8092 delegation allowing validator to respond to a validation request"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "description": "Issue an approver-signed ERC-8092 delegation association payload (with IPFS pointer) for a validation request."
    },
    {
      "id": "atp.account.addOrUpdate",
      "name": "atp.account.addOrUpdate",
      "tags": [
        "atp",
        "account",
        "database",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Add or update user account in ATP database"
      ],
      "inputModes": [
        "text/plain"
      ],
      "outputModes": [
        "text/plain"
      ],
      "description": "Add or update an account in the ATP accounts table"
    },
    {
      "id": "atp.agent.get",
      "name": "atp.agent.get",
      "tags": [
        "atp",
        "agent",
        "database",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Get agent record/config from ATP database"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Get an agent from the ATP agents table. Payload: { ens_name? | agent_name? | agent_account? }"
    },
    {
      "id": "atp.agent.createOrUpdate",
      "name": "atp.agent.createOrUpdate",
      "tags": [
        "atp",
        "agent",
        "database",
        "a2a",
        "oasfExtension:true"
      ],
      "examples": [
        "Create or update agent in ATP database"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Create or update an agent in the ATP agents table (supports session_package and agent_card_json)."
    },
    {
      "id": "atp.ens.isNameAvailable",
      "name": "atp.ens.isNameAvailable",
      "tags": [
        "ens",
        "availability",
        "a2a",
        "admin",
        "oasfExtension:true"
      ],
      "examples": [
        "Check ENS availability for <label>.8004-agent.eth"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Check if an ENS name is available. Payload: { ensName, chainId }"
    },
    {
      "id": "atp.feedback.request",
      "name": "atp.feedback.request",
      "tags": [
        "erc8004",
        "feedback",
        "request",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Request to give feedback to an agent",
        "Submit a feedback request for an agent"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Request to give feedback to an agent. Requires clientAddress (EOA), targetAgentId (agent ID to give feedback to), and comment (reason for feedback) in payload."
    },
    {
      "id": "atp.feedback.getRequests",
      "name": "atp.feedback.getRequests",
      "tags": [
        "erc8004",
        "feedback",
        "query",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Get all feedback requests for a wallet address",
        "Query feedback requests by client address"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Get all feedback requests associated with a wallet address. Requires clientAddress (EOA) in payload."
    },
    {
      "id": "atp.feedback.getRequestsByAgent",
      "name": "atp.feedback.getRequestsByAgent",
      "tags": [
        "erc8004",
        "feedback",
        "query",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Get all feedback requests for a specific agent",
        "Query feedback requests by target agent ID"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Get all feedback requests for a specific agent. Requires targetAgentId (agent ID) in payload."
    },
    {
      "id": "atp.feedback.markGiven",
      "name": "atp.feedback.markGiven",
      "tags": [
        "erc8004",
        "feedback",
        "update",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Mark a feedback request as having feedback given"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Mark a feedback request as having feedback given, storing the tx hash. Requires feedbackRequestId and txHash in payload."
    },
    {
      "id": "atp.feedback.requestapproved",
      "name": "atp.feedback.requestapproved",
      "tags": [
        "atp",
        "feedback",
        "approval",
        "database",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:trust.feedback.authorization",
        "oasfDomain:governance-and-trust",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Approve a feedback request and notify requester"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Approve a feedback request (no on-chain auth). Requires feedbackRequestId, fromAgentDid, toAgentDid, approvedForDays."
    },
    {
      "id": "atp.inbox.sendMessage",
      "name": "atp.inbox.sendMessage",
      "tags": [
        "erc8004",
        "inbox",
        "message",
        "a2a",
        "oasfExtension:true",
        "oasf:agent_interaction.request_handling",
        "oasf:integration.protocol_handling",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Send a message via the inbox system"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Send a message via the inbox system. Requires body, and at least one destination (toClientAddress, toAgentDid, or toAgentName)."
    },
    {
      "id": "atp.inbox.listClientMessages",
      "name": "atp.inbox.listClientMessages",
      "tags": [
        "erc8004",
        "inbox",
        "query",
        "a2a",
        "oasfExtension:true",
        "oasf:agent_interaction.request_handling",
        "oasf:integration.protocol_handling",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "List messages for a client address",
        "Get all messages for a wallet"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "List messages for a client address (both sent and received). Requires clientAddress (EOA) in payload."
    },
    {
      "id": "atp.inbox.listAgentMessages",
      "name": "atp.inbox.listAgentMessages",
      "tags": [
        "erc8004",
        "inbox",
        "query",
        "a2a",
        "oasfExtension:true",
        "oasf:agent_interaction.request_handling",
        "oasf:integration.protocol_handling",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "List messages for an agent DID",
        "Get all messages for an agent"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "List messages for an agent DID (both sent and received). Requires agentDid in payload."
    },
    {
      "id": "atp.inbox.markRead",
      "name": "atp.inbox.markRead",
      "tags": [
        "erc8004",
        "inbox",
        "query",
        "a2a",
        "oasfExtension:true",
        "oasf:agent_interaction.request_handling",
        "oasf:integration.protocol_handling",
        "oasfDomain:collaboration"
      ],
      "examples": [
        "Mark a message as read"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Mark a message as read. Requires messageId in payload."
    },
    {
      "id": "atp.stats.trends",
      "name": "atp.stats.trends",
      "tags": [
        "atp",
        "stats",
        "query",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:governance.audit.provenance",
        "oasfDomain:governance-and-trust"
      ],
      "examples": [
        "Get feedback/validation trends"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Get stats trends. Optional payload: { daysBack }."
    },
    {
      "id": "atp.stats.sdkApps",
      "name": "atp.stats.sdkApps",
      "tags": [
        "atp",
        "stats",
        "query",
        "a2a",
        "admin",
        "oasfExtension:true",
        "oasf:governance.audit.provenance",
        "oasfDomain:governance-and-trust"
      ],
      "examples": [
        "Get SDK app stats"
      ],
      "inputModes": [
        "text/plain",
        "application/json"
      ],
      "outputModes": [
        "text/plain",
        "application/json"
      ],
      "description": "Get stats for SDK apps."
    }
  ],
  "supportsExtendedAgentCard": false
}