{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_mz5sn29tusp4","handle":"tldraw","url":"https://wellknown.network/agents/tldraw","links":{"self":"https://wellknown.network/agents/tldraw/record.json","html":"https://wellknown.network/agents/tldraw","markdown":"https://wellknown.network/agents/tldraw/record.md","api":"https://wellknown.network/api/v1/agents/tldraw","status":"https://wellknown.network/api/v1/agents/tldraw/status","claim":"https://wellknown.network/agents/tldraw/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/tldraw/claim.json","badge":"https://wellknown.network/agents/tldraw/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/tldraw/history","tools":"https://wellknown.network/api/v1/agents/tldraw/tools"},"ard":{"identifier":"urn:air:tldraw-mcp-app.tldraw.workers.dev:server:tldraw","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"tldraw","summary":"Draw and visually collaborate with your agents on tldraw's canvas.","description":"Draw and visually collaborate with your agents on tldraw's canvas.","publisher":{"name":"tldraw","url":null},"homepage":null,"repository":"https://github.com/tldraw/tldraw","version":"0.1.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://tldraw-mcp-app.tldraw.workers.dev/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"https://tldraw-mcp-app.tldraw.workers.dev/sse","type":"mcp_sse","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-03-06T10:01:58.127181Z","publishedAt":"2026-03-06T10:01:58.127181Z","registryName":"io.github.tldraw/tldraw"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"content.writing","name":"Writing & Editing","confidence":0.51,"provenance":"derived"}],"categories":["content"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 2h ago.","lastOkAt":"2026-10-10T00:29:08.604Z","lastProbedAt":"2026-10-10T00:29:08.604Z","statusComputedAt":"2026-10-10T00:30:08.380Z","reliability30d":{"probes":114,"successRate":0.9474,"p50Ms":706,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":114,"ok":108,"authBoundaryOk":0,"serviceOk":108,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T00:29:08.604Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":863,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T18:27:23.759Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":729,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T12:29:22.341Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":705,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T06:21:58.557Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":608,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-09T00:26:44.660Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":807,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T18:27:14.222Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":950,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T12:25:48.379Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":615,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-08T06:22:36.612Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":525,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T23:24:52.491Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":730,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}},{"at":"2026-10-07T17:31:02.327Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1395,"error":null,"detail":{"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"toolCount":6,"toolsHash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","serverName":"tldraw","capabilities":["tools","resources"],"serverVersion":"1.0.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"search","description":"Search the tldraw Editor API spec by writing JavaScript that receives a `spec` object and returns a result. The spec contains: spec.members (all Editor methods/"},{"name":"exec","description":"Execute JavaScript code on a tldraw canvas. The code runs in the widget with access to the live `editor` instance, helper functions, and normal js. Use the `sea"},{"name":"_exec_callback","description":"App-only: widget calls this to resolve a pending exec request."},{"name":"_get_canvas_state","description":"App-only: get the latest checkpoint for a canvas by its canvasId."},{"name":"read_checkpoint","description":"App-only: read shapes from a checkpoint by ID."},{"name":"save_checkpoint","description":"App-only: save shapes to a checkpoint (from user edits). shapesJson and assetsJson must be JSON array strings."}],"package":null,"toolSurface":{"id":"ts_ap973wbvajye","endpointId":"ep_ew572msvehq6","hash":"2fd950a7bb49fb361a6fa20a36b0f313b026bc1da7adabb75a6345f75bd5db56","toolCount":6,"serverName":"tldraw","serverVersion":"1.0.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-09-12T13:27:01.646Z","lastSeenAt":"2026-10-10T00:29:08.611Z","observations":100,"toolNames":["search","exec","_exec_callback","_get_canvas_state","read_checkpoint","save_checkpoint"],"distinctSurfaces":1},"endpointFacts":[{"id":"ep_ew572msvehq6","url":"https://tldraw-mcp-app.tldraw.workers.dev/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-08T06:22:36.621Z","auth":{"observedAt":"2026-10-08T06:22:36.732Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-10-08T06:22:36.741Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"tldraw.workers.dev","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-20T18:33:36.000Z","validTo":"2026-12-19T19:33:29.000Z","daysToExpiry":70,"sanCount":2,"fingerprint256":"E7:EE:7C:06:1E:E4:92:A3:CA:66:94:2D:F2:EE:02:CA:19:F4:6B:6E:34:3D:69:7C:CA:AB:01:23:5E:61:12:59"}},{"id":"ep_v5g3ca5qkm7a","url":"https://tldraw-mcp-app.tldraw.workers.dev/sse","type":"mcp_sse","factsCheckedAt":"2026-09-28T15:27:20.310Z","auth":null,"tls":{"observedAt":"2026-09-28T15:27:20.333Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"tldraw.workers.dev","issuer":{"commonName":"WE1","organization":"Google Trust Services"},"validFrom":"2026-09-20T18:33:36.000Z","validTo":"2026-12-19T19:33:29.000Z","daysToExpiry":70,"sanCount":2,"fingerprint256":"E7:EE:7C:06:1E:E4:92:A3:CA:66:94:2D:F2:EE:02:CA:19:F4:6B:6E:34:3D:69:7C:CA:AB:01:23:5E:61:12:59"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.tldraw/tldraw","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.tldraw%2Ftldraw","firstSeenAt":"2026-09-07T04:21:43.505Z","fetchedAt":"2026-10-08T12:19:36.541Z","normalizedAt":"2026-10-08T12:19:36.541Z"}]},"firstSeenAt":"2026-09-07T04:21:43.505Z","updatedAt":"2026-10-10T00:31:17.872Z"}