tlly
by tlly.dev in Other
Hosted dashboards and scheduled data jobs for AI agents, with thresholds, alerts and share links.
https://tlly.dev/mcp- Tools
- 30
- open to any client
- Uptime
- 100%
- last 30 days
- Response time
- 458 ms
- 574 ms slowest 5%
- Last check
- Passed
- 10 h ago, next any minute now
Reliability
Status and outage history · Atom feed · Watch with other listings
How to connect
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"tlly": {
"type": "http",
"url": "https://tlly.dev/mcp"
}
}
}30 tools
- create_dashboard
Create a hosted dashboard; returns its public URL. Dashboard spec: {"title": str, "description"?: str, "range"?: "1m"|"3m"|"6m"|"ytd"|"1y"|"2y"|"5y"|"10y"|"max", "theme"?: "auto"|"light"|"dark" (default mode; auto follows the viewer's system and viewers can switch), "layout"?…
- update_dashboard
Replace a dashboard's spec (URL stays the same). Every update is saved as a numbered version. With "draft": true it is saved without going live: viewers keep seeing the live version, members can preview the draft at the returned preview_url, and publish_dashboard_version makes…
- list_dashboard_versions
List a dashboard's saved versions (newest first) with which one is live and a members-only preview URL for each.
- publish_dashboard_version
Make a saved version of a dashboard the live one (also to roll back). The dashboard keeps its URL and visibility.
- rotate_dashboard_url
Give a dashboard a new public URL and disable the old one at once (e.g. if a link leaked). Spec and data are unchanged.
- list_dashboards
List dashboards with their URLs.
- delete_dashboard
Delete a dashboard (series data is kept).
- push_points
Write dated values to a series (upsert by date). A date is YYYY-MM-DD (midnight UTC), or a time such as 2026-09-30T14:30Z, floored to the half hour. Use when you compute data yourself. Values are numbers, or short text labels for a text series (e.g. a rating or stance; see Data…
- get_series
Read the latest points of a series.
- list_series
List all series with their type (number or text), point counts and date ranges; text series also list their values.
- delete_series
Delete all points of a series, or remove a derived series' definition.
- define_derived
Create or replace a derived series, computed from other series every time it is read (always fresh, stores no points, counts toward the series limit). definition: {"op":"add"|"subtract"|"multiply"|"divide","a":series,"b":series} (matched by date) |…
- list_secrets
List the names of the workspace's stored secrets (API keys for private sources) and the host each may be sent to. Use one in a job's url, headers or body as {{secret:NAME}}.
- test_job
Dry-run a job spec: fetch, extract and transform, return a preview. Saves nothing. Job spec: {"series": name, "cron": "m h dom mon dow" (UTC, at most every 30 min), "request": {"url", "method"?: "GET"|"POST", "headers"?: {}, "body"?: obj|str, "pages"?: {"param"…
- create_job
Schedule a fetch job. It runs once immediately and the result is returned. Job spec: {"series": name, "cron": "m h dom mon dow" (UTC, at most every 30 min), "request": {"url", "method"?: "GET"|"POST", "headers"?: {}, "body"?: obj|str, "pages"?: {"param": "page"…
- import_once
Fetch a job spec once and save the result, without scheduling it or using a job slot ("cron" is optional and ignored). Use for one-off dashboards whose data doesn't need to update; points count toward the data quota. Job spec: {"series": name, "cron": "m h dom mon dow" (UTC, at…
- update_job
Replace a job's spec, or pause it with enabled=false. Job spec: {"series": name, "cron": "m h dom mon dow" (UTC, at most every 30 min), "request": {"url", "method"?: "GET"|"POST", "headers"?: {}, "body"?: obj|str, "pages"?: {"param": "page", "start"?: 0, "max"?…
- list_jobs
List scheduled fetch jobs with their last run status and any error message.
- run_job_now
Run a scheduled fetch job immediately, store any new points, and return the run result.
- delete_job
Delete a job (its series data is kept).
- get_status
Health check: failing jobs, stale or empty panels, dashboards, storage usage. Call this to verify everything works.
- get_usage
Storage usage against quotas (data points = values + annotations, series, dashboards, jobs) and the largest series. Check before large writes.
- add_annotations
Attach short dated notes to a series (e.g. 'Policy rate raised to 4.5%'); shown as markers on charts. Single-line plain text, max 280 chars; one note per date (re-adding replaces it); each counts as one data point.
- list_annotations
Read the latest annotations of a series.
- delete_annotations
Delete annotations of a series on the given dates, or all of them if dates is omitted.
- set_alert_webhook
Set or clear the workspace webhook URL for job-failure and dashboard status alerts (pass an empty url to clear). When events fire, tlly POSTs JSON to that URL (Slack and Discord incoming webhooks get a short text payload instead). Events include job_failed, status_changed (keep…
- set_panel_alert
Set when one dashboard panel sends alert email and/or a webhook (colour change, threshold cross, or off). trigger: change (default), red, notgreen, above, below, or off; above/below need limit. notify: both, email, or webhook. panel is the 0-based index in the live spec. Saving…
- set_stale_alert
Configure when tlly sends stale-data alert email and webhooks because a series stopped updating. after: auto (from the job schedule and point spacing, at least two days), off, hours, or a window like 48h or 7d. Use dashboard_id for every series on a dashboard, series for one…
- list_integration_skills
List integration setup playbooks (Stripe, Shopify, Sheets, and the other sources tlly can read). A spreadsheet starts from the KPI template. Make a copy https://docs.google.com/spreadsheets/d/1Ty5X3LkY2unxTNGbkq36qDzuuYxQMsuywaTNyzL_pac/copy. Public CSV…
- get_integration_skill
Read one integration playbook by id: what to track, the minimum credential and scopes, the exact tlly job, and gotchas. google-sheets and json-api also return a template field (Make a copy, public CSV, downloads). Make a copy…
Security scan
6 findings
- Unusually long description in tool:create_dashboard
create_dashboard (create dashboard) Create a hosted dashboard; returns its publi… - Unusually long description in tool:update_dashboard
update_dashboard (update dashboard) Replace a dashboard's spec (URL stays the sa… - Unusually long description in tool:test_job
test_job (test job) Dry-run a job spec: fetch, extract and transform, return a p… - Unusually long description in tool:create_job
create_job (create job) Schedule a fetch job. It runs once immediately and the r… - Unusually long description in tool:import_once
import_once (import once) Fetch a job spec once and save the result, without sch… - Unusually long description in tool:update_job
update_job (update job) Replace a job's spec, or pause it with enabled=false. Jo…
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 10 h ago | Passed | 200 | 420 ms |
| 22 h ago | Passed | 200 | 516 ms |
| 32 h ago | Passed | 200 | 521 ms |
| 44 h ago | Passed | 200 | 447 ms |
| 2 days ago | Passed | 200 | 545 ms |
Show 10 older checks
| 3 days ago | Passed | 200 | 479 ms |
| 3 days ago | Passed | 200 | 447 ms |
| 4 days ago | Passed | 200 | 574 ms |
| 4 days ago | Passed | 200 | 437 ms |
| 5 days ago | Passed | 200 | 461 ms |
| 5 days ago | Passed | 200 | 394 ms |
| 6 days ago | Passed | 200 | 248 ms |
| 7 days ago | Passed | 200 | 445 ms |
| 7 days ago | Passed | 200 | 611 ms |
| 8 days ago | Passed | 200 | 462 ms |