)]}'
{
  "commit": "61ba1ea081dbc83c89b62bd65336328a71fda858",
  "tree": "6b4f29441fa247c0cd4e8e19eba72c0dfb9a8c27",
  "parents": [
    "b77cda54cfa058e236fcb06efe077ade729a02eb"
  ],
  "author": {
    "name": "Jacob MacDonald",
    "email": "jakemac@google.com",
    "time": "Tue Jul 15 17:47:06 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jul 16 00:47:06 2025 +0000"
  },
  "message": "Add more and better examples (#228)\n\nTowards https://github.com/dart-lang/ai/issues/220.\r\n\r\nI also added a utility function for created stdio stream channels to simplify the examples (and real user code), and fixed a bug in the PromptMessage constructor.\r\n\r\nStill missing a few examples, but this covers the most common use cases.\r\n\r\ncc @gaaclarke",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "08ead76f106fa8442e4579369b737de8192de3f5",
      "old_mode": 33188,
      "old_path": "mcp_examples/bin/file_system_server.dart",
      "new_id": "d019aada87147e2da59a7c64603a83960167654a",
      "new_mode": 33188,
      "new_path": "mcp_examples/bin/file_system_server.dart"
    },
    {
      "type": "modify",
      "old_id": "95af431ef56bad76966a2e98a96ab605c7606f23",
      "old_mode": 33188,
      "old_path": "mcp_examples/bin/workflow_client.dart",
      "new_id": "235bd6b71026e4212a231a824584ca0f2fbf7f33",
      "new_mode": 33188,
      "new_path": "mcp_examples/bin/workflow_client.dart"
    },
    {
      "type": "modify",
      "old_id": "6f0b5f527cb190f5dda1aeae8ff5b442861cd279",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/CHANGELOG.md",
      "new_id": "52517b7e724b2adf4308956524623848abae801c",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "eaf81553a3031672b89975f6e36e65992213b126",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/example/README.md",
      "new_id": "45f95e9e36e8474e9970d086689238ad18af5b27",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/README.md"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "94f491e41e0ed399b60091888ff79bfbb286a380",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/prompts_client.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "76a1e292026943156556d6308ab6e4566451b57a",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/prompts_server.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "50d1bfc31434c9ddbf066bf302b760c973a830a9",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/resources_client.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1b841453b0382eddd7d48cfde199cf890fd96996",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/resources_server.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "62941255004e4eaa2fabfe689525c367dc69b4ea",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/roots_and_logging_client.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7adbc80e126ca913cb44446364f763780eead31b",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/roots_and_logging_server.dart"
    },
    {
      "type": "delete",
      "old_id": "4a86d0f9abee95bb0a1b15c61d7a14aa236bb87b",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/example/simple_client.dart",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "abe3c72ec1f523b9964ebe33cc556d24a3978248",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/example/simple_server.dart",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "794698871550fd942e7b46a8c490f6dfe8fa38db",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/tools_client.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "967bf77dc4aa3742f684f2f2faa673596f4bb437",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/example/tools_server.dart"
    },
    {
      "type": "modify",
      "old_id": "86fa48e228cc6e1e85c1beceeda6735cbce2b411",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/lib/src/api/prompts.dart",
      "new_id": "90126eca92e8f07983d47e76a8befeff9b2dd688",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/lib/src/api/prompts.dart"
    },
    {
      "type": "modify",
      "old_id": "b70b7b613313e57f2faef711c1dc7c2f7c32f82d",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/lib/src/client/client.dart",
      "new_id": "125f7bf30fe8edfff2789dd15dd7eb6f9c7de45f",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/lib/src/client/client.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "795c5359e8d06d830365bcdc53ffe55f07eb75b1",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/lib/stdio.dart"
    },
    {
      "type": "modify",
      "old_id": "133b768d63d555e5604c7b2261cf3ddfbb37d6f1",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp/test/api/prompts_test.dart",
      "new_id": "cc35efcd23683a29fb64ddbbafde7eead8ff0723",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp/test/api/prompts_test.dart"
    },
    {
      "type": "modify",
      "old_id": "4eb854be985024ab8e253499d183884872fe7ef1",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/server.dart",
      "new_id": "382730fa9ebd9648f0607371994891a018a5524b",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/server.dart"
    },
    {
      "type": "modify",
      "old_id": "9f95850b43a656ed052d3bee57140b66f37b7edc",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/test_harness.dart",
      "new_id": "9333d7e4ed593d8fc519fad1b69b03c50ee4c9cd",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/test_harness.dart"
    },
    {
      "type": "modify",
      "old_id": "c90a12c27d57372a76e7a954971a5fdc048b7bf3",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/tool/update_readme.dart",
      "new_id": "f628319a48c822933599128ea93fd92296a16ad8",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/tool/update_readme.dart"
    }
  ]
}
