Some checks failed
Deploy analytics worker / Deploy analytics worker to ${{ (github.ref == 'refs/heads/production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Failing after 1s
i18n upload strings / Upload latest strings (push) Failing after 1s
Deploy bemo / Deploy bemo to ${{ (github.ref == 'refs/heads/bemo-production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Failing after 1s
Deploy grafana resources / ${{ github.event_name == 'push' && 'Deploy grafana resources' || 'Validate grafana resources (dry run)' }} (push) Failing after 0s
End to end tests (dotcom) / Check for relevant changes (push) Failing after 0s
End to end tests (examples) / Check for relevant changes (push) Failing after 0s
End to end tests (mermaid readability) / Check for relevant changes (push) Failing after 1s
End to end tests (perf) / Check for relevant changes (push) Failing after 0s
Publish editor extensions / Publish editor extensions (push) Failing after 1s
Publish SDK packages / Remove the publish-packages label (push) Has been skipped
Checks / Tests & checks (push) Has been cancelled
Checks / Build all projects (push) Has been cancelled
Deploy templates / Deploy templates (push) Has been cancelled
End to end tests (dotcom) / End to end tests (dotcom) (push) Has been cancelled
End to end tests (mermaid readability) / End to end tests (mermaid readability) (push) Has been cancelled
End to end tests (perf) / End to end tests (perf) (push) Has been cancelled
Deploy .com / Deploy dotcom to ${{ (github.ref == 'refs/heads/production' && 'production') || (github.ref == 'refs/heads/main' && 'staging') || 'preview' }} (push) Has been cancelled
End to end tests (examples) / End to end tests (examples) (push) Has been cancelled
Publish SDK packages / Publish SDK packages (push) Has been cancelled
Publish SDK packages / Tell user released version (push) Has been cancelled
Publish SDK packages / Publishes code templates to separate repositories (push) Has been cancelled
Publish SDK packages / Deploys the template demos with the new SDK version (push) Has been cancelled
63 lines
1.8 KiB
TOML
63 lines
1.8 KiB
TOML
name = "tldraw-mcp-app"
|
|
main = "src/worker.ts"
|
|
# Keep in sync with WORKER_COMPATIBILITY_DATE in src/shared/types.ts
|
|
compatibility_date = "2025-03-10"
|
|
compatibility_flags = ["nodejs_compat"]
|
|
preview_urls = true
|
|
|
|
[assets]
|
|
directory = "./dist"
|
|
binding = "ASSETS"
|
|
run_worker_first = true
|
|
|
|
[durable_objects]
|
|
bindings = [
|
|
{ class_name = "TldrawMCP", name = "MCP_OBJECT" },
|
|
{ class_name = "CanvasStore", name = "CANVAS_STORE" },
|
|
]
|
|
|
|
[[migrations]]
|
|
tag = "v1"
|
|
new_sqlite_classes = ["TldrawMCP"]
|
|
|
|
[[migrations]]
|
|
tag = "v2"
|
|
new_sqlite_classes = ["CanvasStore"]
|
|
|
|
[vars]
|
|
# Set this to the public URL of the worker. Used for constructing absolute image URLs.
|
|
# Override with `--var WORKER_ORIGIN:https://your-tunnel.trycloudflare.com` for cloudflared tunnels.
|
|
WORKER_ORIGIN = "https://tldraw-mcp-app.tldraw.workers.dev"
|
|
# Default to production-safe widget behavior. Local dev scripts override this with
|
|
# `--var MCP_IS_DEV:true` so local HTTP connectors omit `ui.domain`.
|
|
MCP_IS_DEV = "false"
|
|
|
|
[[analytics_engine_datasets]]
|
|
binding = "MCP_ANALYTICS"
|
|
dataset = "MCP_ANALYTICS"
|
|
|
|
[[worker_loaders]]
|
|
binding = "LOADER"
|
|
|
|
#################### Rate limiting ####################
|
|
[[ratelimits]]
|
|
name = "RATE_LIMITER"
|
|
namespace_id = "2001"
|
|
|
|
[ratelimits.simple]
|
|
limit = 30
|
|
period = 60
|
|
|
|
#################### Observability ####################
|
|
[observability]
|
|
enabled = true
|
|
|
|
# Invocation logs record every invocation, including ones that produce no output
|
|
# of their own. The Agents SDK spends three Durable Object invocations per MCP
|
|
# request on session routing before any work happens (a `set-name` fetch, plus
|
|
# `getInitializeRequest` and `updateProps` RPCs), so those empty records were
|
|
# roughly 80% of this worker's log volume. Turning them off keeps `console`
|
|
# output — head sampling would drop real errors along with the noise.
|
|
[observability.logs]
|
|
invocation_logs = false
|