{
  "description": "Builds a task-level outcome and cost dossier while keeping missing costs and unverified downstream claims explicit.",
  "endpoint": "https://www.gaipagents.com/mcp/agents/outcome-value",
  "name": "io.github.tjcgraham-rgb/gaip-outcome-value",
  "protocolVersion": "2025-06-18",
  "publication": {
    "acceptanceNotImplied": true,
    "descriptorLive": true,
    "officialMcpRegistry": "PENDING_INDIVIDUAL_REGISTRY_ACCEPTANCE"
  },
  "repository": {
    "source": "github",
    "url": "https://github.com/tjcgraham-rgb/-gaip-agent-to-art-prototype"
  },
  "schema_version": "gaip.agent-mcp-descriptor.v1",
  "title": "GAIP Outcome & Value Agent",
  "tools": [
    {
      "annotations": {
        "destructiveHint": false,
        "openWorldHint": false,
        "readOnlyHint": false
      },
      "description": "Build a task-level delivery, downstream-use and full-cost dossier. Missing costs and unverified claims remain explicit; no ROI or causal-value claim is issued.",
      "inputSchema": {
        "additionalProperties": true,
        "properties": {
          "baseline_cost_gbp": {
            "oneOf": [
              {
                "type": "number"
              },
              {
                "type": "string"
              }
            ]
          },
          "continuity_handle": {
            "additionalProperties": false,
            "properties": {
              "continuity_id": {
                "type": "string"
              },
              "token": {
                "type": "string"
              }
            },
            "required": [
              "continuity_id",
              "token"
            ],
            "type": "object"
          },
          "costs": {
            "type": "object"
          },
          "counterparty_id": {
            "type": "string"
          },
          "data_classification": {
            "enum": [
              "PUBLIC",
              "NON_PERSONAL_PUBLIC"
            ],
            "type": "string"
          },
          "delivery": {
            "required": [
              "status"
            ],
            "type": "object"
          },
          "downstream_use": {
            "type": "object"
          },
          "episode_id": {
            "type": "string"
          },
          "evidence_refs": {
            "items": {
              "type": "string"
            },
            "maxItems": 20,
            "type": "array"
          },
          "independent_operator_id": {
            "type": "string"
          },
          "synthetic": {
            "type": "boolean"
          },
          "task": {
            "required": [
              "acceptance_criteria"
            ],
            "type": "object"
          },
          "task_class": {
            "type": "string"
          }
        },
        "required": [
          "data_classification",
          "counterparty_id",
          "task_class",
          "episode_id",
          "task",
          "delivery",
          "costs"
        ],
        "type": "object"
      },
      "name": "gaip_measure_outcome_value",
      "title": "Measure task outcome and value"
    }
  ],
  "transport": "streamable-http",
  "version": "1.0.0"
}