Dashly MCP server
The reference for developers, IT admins and anyone who wants to know exactly what an assistant can do with Dashly.
Endpoint
https://dashly.si/mcp is the whole server: one remote MCP endpoint over streamable HTTP. There is nothing to install. To add it to ChatGPT, Claude or another assistant, follow the connect guides.
Sign-in
Every request needs a signed-in Dashly account. Assistants sign in with OAuth 2.1 and PKCE: Dashly accepts client ID metadata documents and dynamic client registration, so a client needs no setup with us. A request without a token gets 401 with a WWW-Authenticate header pointing at https://dashly.si/.well-known/oauth-protected-resource/mcp, which names the authorization server and its metadata at https://dashly.si/.well-known/oauth-authorization-server.
The person signs in on dashly.si with a code sent to their email and approves a consent screen that lists what the assistant will be able to do. For scripts and clients without OAuth, a personal token (it starts with dsh_, up to five per account, made in Settings) works as Authorization: Bearer. Tokens are stored hashed; revoking one in Settings, or disconnecting an assistant, ends its access at once.
Permissions
| Scope | What it allows |
|---|---|
data:read | Read what you track, your entries, dashboards and summaries. |
data:write | Create and change what you track, log and correct entries, skip or pause days. |
dashboards:write | Create, change and archive dashboards. |
account | Change your account timezone. |
Tools
Every tool declares a title and whether it only reads, adds data, or can change or remove what is already there, so the assistant knows what to confirm with you. Tools that delete, merge or archive tell the assistant to ask you and wait for a yes.
Things you track
| Tool | What it does | Access |
|---|---|---|
list_topics | Lists everything you track, with each one's type, unit, goal and entry count. | Reads only |
create_topic | Starts tracking something new: a sum, count, measurement, checkbox, rating, duration, money, event or task list, with an optional goal. | Adds data |
update_topic | Changes a tracked thing's name, unit, goal, fields or look. A unit change can convert the stored history. | Can change or remove data |
archive_topic | Hides a tracked thing from your dashboards. The assistant asks you first. | Can change or remove data |
merge_topics | Moves every entry from one tracked thing into another and archives the first. The assistant asks you first. | Can change or remove data |
Entries
| Tool | What it does | Access |
|---|---|---|
log_entry | Logs one entry and reports today's total against the goal. | Adds data |
log_entries | Logs up to 50 entries at once, such as every food in a meal. All or nothing. | Adds data |
update_entry | Corrects an entry you logged; only the fields sent change. | Can change or remove data |
delete_entry | Removes one entry. The assistant asks you first. | Can change or remove data |
query_entries | Lists the entries of one tracked thing, newest first, a page at a time. | Reads only |
summarize_topic | Totals, daily average, streak, best day and goal progress over a range. | Reads only |
Days
| Tool | What it does | Access |
|---|---|---|
summarize_day | How a day went across everything you track, with the day score. | Reads only |
skip_day | Takes one day off one goal, so it does not count against you or break the streak. | Adds data |
pause_days | Pauses every goal over a range of days, such as a holiday. | Adds data |
unskip | Removes a skip or a pause. The assistant asks you first. | Can change or remove data |
Dashboards
| Tool | What it does | Access |
|---|---|---|
list_dashboards | Lists your dashboards, Home first, with a link to each. | Reads only |
get_dashboard | Returns one dashboard and its layout. | Reads only |
create_dashboard | Creates a dashboard besides Home. | Adds data |
update_dashboard | Adds, moves or removes cards on a dashboard. A dashboard can be showing on a screen you paired, which updates at once. | Can change or remove data |
archive_dashboard | Hides a custom dashboard and stops it showing on paired screens. The assistant asks you first. | Can change or remove data |
Account
| Tool | What it does | Access |
|---|---|---|
get_capabilities | The catalog of what a dashboard can hold: types, widgets, card sizes and themes. The same for everyone. | Reads only |
get_account | Your email, timezone, subscription status and this month's usage. | Reads only |
update_account | Changes your timezone, which decides what "today" means. | Can change or remove data |
set_companion | Changes the companion shown with your day: Pip, Bao, Lumi or a person that looks like you. | Can change or remove data |
Resource
dashly://capabilities holds the same catalog as get_capabilities: the types of things you can track, the widgets each allows, card sizes and themes. It is the same for everyone.
Results and errors
Every result starts with a plain sentence and carries the same data as JSON, so assistants that only show text still see ids. A refusal is a tool error, never a protocol error: the text starts with a code in brackets, such as [SUBSCRIPTION_REQUIRED], and names the field that was wrong and the allowed values, so the assistant can correct itself and try again.
Limits
Each connection can make up to 600 requests a minute; past that the server answers 429 with Retry-After. One log_entries call takes up to 50 entries. Monthly entry limits and the number of things you can track depend on the plan, described on the pricing page.
Data and privacy
The server only reads and changes the signed-in person's own Dashly data, within the permissions they approved. What an assistant reads from Dashly is then handled by that assistant's provider under its own policy. The privacy policy covers what we store, how long we keep it and how to delete it.
Support
Questions, bugs or a security report: contact@thinslatelabs.us. The server is also listed in the official MCP Registry as si.dashly/dashly.