{
  "title": "Coinbase for Agents: PointCast read-only field report",
  "recordedAt": "2026-11-03",
  "author": "Codex",
  "scope": "Public, unauthenticated requests only. No Coinbase account connected, trade, payment, credential configuration or money movement. Separate HTTP/JSON-RPC probes, not a persistent SDK session or an end-to-end Coinbase\u2013PointCast integration.",
  "earlierObservation": {
    "provenance": "Earlier assistant test reported in the originating conversation on 2026-11-03; not independently reproduced from that environment.",
    "coinbasePublicSpotStatus": 200,
    "pointcastMcpStatus": 403,
    "pointcastBlocksStatus": 403,
    "interpretation": "Earlier environment-specific access result; cause not established. Local retest below succeeded."
  },
  "requests": [
    {
      "startedAt": "2026-11-03T13:00:26.784572+00:00",
      "finishedAt": "2026-11-03T13:00:26.914616+00:00",
      "method": "GET",
      "url": "https://api.coinbase.com/v2/prices/BTC-USD/spot",
      "authentication": "none",
      "status": 200,
      "bodySha256": "71a6898b4a4069c00253bdfc6e886c951c042737c858fdd5da8a373f1dd6774a",
      "responseBody": {
        "data": {
          "amount": "77292.74",
          "base": "BTC",
          "currency": "USD"
        }
      }
    },
    {
      "startedAt": "2026-11-03T13:00:26.785097+00:00",
      "finishedAt": "2026-11-03T13:00:27.758953+00:00",
      "method": "GET",
      "url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/search?query=pointcast.xyz&limit=20",
      "authentication": "none",
      "status": 200,
      "bodySha256": "4cbf8c2da4b253dd121628b47ef04ac75c1492dca24d29f56a61ea38074123ab",
      "responseBody": {
        "partialResults": false,
        "resources": [],
        "searchMethod": "hybrid",
        "x402Version": 2,
        "meta": {
          "searchToken": "hdj4blqdii2yoaa"
        }
      }
    },
    {
      "startedAt": "2026-11-03T13:00:26.785233+00:00",
      "finishedAt": "2026-11-03T13:00:27.057314+00:00",
      "method": "GET",
      "url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/search?urlSubstring=pointcast.xyz&limit=20",
      "authentication": "none",
      "status": 200,
      "bodySha256": "222fa56707b4b42e01954f51331f7076082fdcbc4c657b1ab988786eb8819aea",
      "responseBody": {
        "partialResults": false,
        "resources": [],
        "searchMethod": "text",
        "x402Version": 2,
        "meta": {
          "searchToken": "whk6c7clf35uyaa"
        }
      }
    },
    {
      "startedAt": "2026-11-03T13:00:26.785349+00:00",
      "finishedAt": "2026-11-03T13:00:27.101094+00:00",
      "method": "GET",
      "url": "https://pointcast.xyz/blocks.json",
      "authentication": "none",
      "status": 200,
      "bodySha256": "782d59a6f95f1bb1fa3286af94d60e521d86d0c43ff79f2da08e431d3750737a",
      "responseSummary": "JSON block feed returned; full archived response omitted from this compact public ledger."
    },
    {
      "startedAt": "2026-11-03T13:00:26.785456+00:00",
      "finishedAt": "2026-11-03T13:00:27.038381+00:00",
      "method": "POST",
      "url": "https://pointcast.xyz/api/mcp",
      "authentication": "none",
      "status": 200,
      "bodySha256": "6b6a91f982a6150cd2ffcd6016d21a0a4ecbefc6768a441dfd068ab5513e7af0",
      "requestBody": {
        "jsonrpc": "2.0",
        "id": 1,
        "method": "initialize",
        "params": {
          "protocolVersion": "2024-11-05",
          "capabilities": {},
          "clientInfo": {
            "name": "PointCast-read-only-review",
            "version": "1.0"
          }
        }
      },
      "responseSummary": {
        "protocolVersion": "2025-06-18",
        "serverInfo": {
          "name": "pointcast",
          "version": "0.14.0"
        },
        "capabilities": {
          "tools": {
            "listChanged": false
          },
          "resources": {
            "listChanged": false,
            "subscribe": false
          }
        }
      }
    },
    {
      "startedAt": "2026-11-03T13:01:11.396984+00:00",
      "finishedAt": "2026-11-03T13:01:12.716162+00:00",
      "method": "POST",
      "url": "https://pointcast.xyz/api/mcp",
      "authentication": "none",
      "status": 200,
      "bodySha256": "f64831c5c2f05d63f41ed3df228678b26826e5ae057833bd76052cb9c78cf838",
      "requestBody": {
        "jsonrpc": "2.0",
        "id": 2,
        "method": "tools/list",
        "params": {}
      },
      "responseSummary": {
        "jsonrpc": "2.0",
        "id": 2,
        "toolCount": 116,
        "includesBlocksRecent": true
      }
    },
    {
      "startedAt": "2026-11-03T13:01:30.617885+00:00",
      "finishedAt": "2026-11-03T13:01:31.430131+00:00",
      "method": "POST",
      "url": "https://pointcast.xyz/api/mcp",
      "authentication": "none",
      "status": 200,
      "bodySha256": "8f966c7ebf98667158878b95bc47361d8b4fee72918219efb8a4e0afe072655c",
      "requestBody": {
        "jsonrpc": "2.0",
        "id": 3,
        "method": "tools/call",
        "params": {
          "name": "blocks_recent",
          "arguments": {
            "limit": 1
          }
        }
      },
      "responseBody": {
        "jsonrpc": "2.0",
        "id": 3,
        "result": {
          "content": [
            {
              "type": "text",
              "text": "latest 1 blocks:\n  \u00b7 0775 \u00b7 Before We Require Service, Make It Worth Choosing \u00b7 2026-11-02"
            },
            {
              "type": "text",
              "text": "[\n  {\n    \"id\": \"https://pointcast.xyz/b/0775\",\n    \"url\": \"https://pointcast.xyz/b/0775\",\n    \"external_url\": \"https://www.americorps.gov/sites/default/files/document/2026-01/2026-AmeriCorps-State-and-National-Mandatory-Supplemental-Information.pdf\",\n    \"title\": \"Before We Require Service, Make It Worth Choosing\",\n    \"content_text\": \"Kevin Kelly\u2019s national-service proposal raises a good question: how do we give people a real chance to become useful to one another?\",\n    \"summary\": \"Kevin Kelly\u2019s national-service proposal raises a good question: how do we give people a real chance to become useful to one another?\",\n    \"date_published\": \"2026-11-02T02:38:51.000Z\",\n    \"tags\": [\n      \"CH.ESC\",\n      \"El Segundo\",\n      \"READ\"\n    ],\n    \"image\": \"https://pointcast.xyz/images/og/b/0775.png\",\n    \"_pointcast\": {\n      \"id\": \"0775\",\n      \"channel\": {\n        \"code\": \"ESC\",\n        \"slug\": \"el-segundo\",\n        \"name\": \"El Segundo\",\n        \"color\": \"#534AB7\"\n      },\n      \"type\": \"READ\",\n      \"edition\": null\n    }\n  }\n]"
            }
          ]
        }
      }
    },
    {
      "startedAt": "2026-11-03T13:02:15.752405+00:00",
      "finishedAt": "2026-11-03T13:02:16.098799+00:00",
      "method": "POST",
      "url": "https://agents.coinbase.com/mcp",
      "authentication": "none",
      "status": 401,
      "bodySha256": "fc547a7c4f95feffe054ebecd32254e5888c80c86715edec5b8cd7d3ea2e857b",
      "requestBody": {
        "jsonrpc": "2.0",
        "id": 1,
        "method": "initialize",
        "params": {
          "protocolVersion": "2025-06-18",
          "capabilities": {},
          "clientInfo": {
            "name": "PointCast-read-only-review",
            "version": "1.0"
          }
        }
      },
      "responseBody": "unauthorized\n"
    }
  ]
}
