Skip to main content

MCP server

Boot speaks the Model Context Protocol. Point an MCP client at the endpoint below and your agent gets 66 tools — the same abilities the in-app Sentinel has, minus the ones that only make sense inside a browser.

endpoint
https://boot.techdyn.co.uk/mcp
TransportStreamable HTTP — JSON-RPC 2.0 over POST
Protocol version2025-06-18
AuthenticationA Boot API key, or OAuth 2.1 for clients that cannot send one
Tools66

Quick start

Pick your client. Everything except ChatGPT authenticates with an API key from Account → API Keys; ChatGPT signs in instead.

  1. In ChatGPT, add a connector and enter https://boot.techdyn.co.uk/mcp as the MCP server URL.
  2. ChatGPT reads Boot’s discovery documents and offers to sign in — there is no key to paste.
  3. Sign in to Boot, pass two-factor verification if you use it, and approve the permissions on Boot’s own consent screen.
  4. The connection stays live until you disconnect it under Account → Connected applications.
Replace boot_YOUR_KEY with a real key. Create one under Account → API Keys, granting only the scopes the client needs — a read-only key genuinely cannot write, even if the tool is called by name.

Scopes

A credential sees only the tools its scopes cover, and calling a tool it lacks the scope for is refused outright — hiding a tool from the listing is presentation, refusing the call is the actual control.

ScopeToolsGrants
read 26 Read your projects, tasks, blocks, forecast and history
write 26 Create, change and delete projects, tasks, milestones and tags
bos 14 Drive your day: start and end focus blocks, run timers, shut down and reboot the BOS

Connecting ChatGPT

ChatGPT only ever presents an OAuth bearer token — it cannot send an API key — so Boot acts as an OAuth 2.1 authorization server for it. There is nothing to configure beyond the endpoint URL.

Authorization code with PKCE S256 (required; plain is refused), client identification by Client ID Metadata Document so there is no registration step, access tokens valid one hour, refresh tokens valid thirty days and rotated on every use.

DocumentURL
Protected resource RFC 9728https://boot.techdyn.co.uk/.well-known/oauth-protected-resource
Authorization server RFC 8414https://boot.techdyn.co.uk/.well-known/oauth-authorization-server
Authorization endpointhttps://boot.techdyn.co.uk/app/oauth/authorize
Token endpointhttps://boot.techdyn.co.uk/oauth/token

An unauthenticated call to the endpoint answers 401 with a WWW-Authenticate header naming the first of these, which is how a client that has never seen Boot finds its way in.

Disconnecting

Account → Connected applications → Disconnect all applications cuts off every OAuth application at once, including access tokens already issued — they stop working immediately rather than running out their hour. API keys are separate; revoke those under API Keys.

Tools

Generated from the server's own catalogue, so this is exactly what your agent will see.

read 26 tools

list_projectsget_projectlist_tasksget_tasklist_milestoneslist_deliverablesget_project_dependenciesget_milestone_dependenciesget_deliverable_dependenciesget_bos_statelist_blocksget_block_planget_forecastget_score_biasresume_dayplan_my_dayget_nsil_statusget_srw_statusget_timerlist_journallist_tagsget_task_tagsget_account_infoget_eventsget_historyget_stats

write 26 tools

create_projectupdate_projectdelete_projectbatch_create_projectscreate_taskupdate_taskdelete_taskbatch_create_taskscreate_milestoneupdate_milestonedelete_milestonebatch_create_milestonescreate_deliverableupdate_deliverabledelete_deliverablebatch_create_deliverablesset_project_dependencyset_task_dependencyset_milestone_dependencymark_milestones_sequentialset_deliverable_dependencycreate_journalcreate_tagupdate_tagdelete_tagset_task_tags

bos 14 tools

execute_bos_commandshutdownrebootstart_blockcomplete_blocklog_switch_urgereroll_forecastset_score_biasclear_score_biasupdate_energystart_timerpause_timerresume_timerstop_timer

What an agent cannot do

Refusals are normal here. The BOS is a state machine with a fixed authority order — Kernel > NSIL > execution state > RAB > SRW > user request. A command that is not legal from the current state is refused rather than queued, and while NSIL is armed the server declines new execution planning. A refusal means the rule held; report it rather than retrying.

Limits

LimitValue
Calls per credential per minute60
Calls per credential per day5000
JSON-RPC calls per batch50
Failed sign-ins per IP per minute20
Bytes per tool result100 KB

A batch counts once per tools/call it contains, so batching buys no extra allowance. Responses carry X-RateLimit-Limit and X-RateLimit-Remaining; a 429 carries Retry-After.

Troubleshooting

SymptomCause
401 with WWW-AuthenticateNo key, or the key is revoked, expired or unknown. All four answer identically on purpose.
403 plan does not include agent accessThe plan's Agent & MCP access capability is off.
503 endpoint is disabledAn administrator has turned the MCP server off.
429Rate limited. Wait for Retry-After.
A tool "does not exist" but is listed aboveYour credential lacks that tool's scope. Missing and forbidden read identically.

Driving the REST API directly instead? See the API reference.