Skip to main content
OnTime exposes a Model Context Protocol server, so an AI agent — Claude, ChatGPT, or your own — can operate the product directly: check a team’s attendance, file a leave request, clear an approvals queue, run a payroll cycle.

The endpoint

JSON-RPC over HTTP. It is not part of the REST API and does not appear in the API Reference.

Identity is the whole design

An agent acts as a specific employee, with exactly that employee’s permissions and scope.This is the property everything else rests on. A credential bound to a team lead can approve their direct reports’ leave and nobody else’s. A credential bound to an ordinary employee can punch and apply for leave and see nothing about anyone else.An agent is never more powerful than the person it acts as. A compromised agent key is exactly as dangerous as that person’s password — no more.
Around 71 tools are exposed, but what any given credential sees is a subset. Tools whose permission the credential lacks are not listed at all — they are invisible, not visible-then- denied.

Two ways to authenticate

API key

An ont_… key issued in the admin console, bound to an employee. Sent as a bearer token.Best for Claude Code, scripts, and anything that can set a header. See Claude Code.

OAuth

An oat_… access token obtained through OnTime’s OAuth 2.1 facade. Used by hosted connectors that will not accept a static key.Required for claude.ai, Claude Desktop and ChatGPT. See Claude.
An OAuth login is always employee-bound. There is no service-account path through OAuth — authorizing a connector means authorizing it as you.

Service keys

An API key that is not bound to an employee is a service key. It gets a narrower, org-level view and cannot call any tool that requires an employee identity — self-service tools, anything using approval scope. Bind a key to an employee unless you specifically want the narrower surface.

What an agent can do

Self-service

Punch, check the day, apply for leave, request a regularization or overtime, read payslips.

Team management

See who is in, drill into a report, clear the approvals queue for leave, regularizations and overtime.

Administration

Create and update employees, departments, locations, roles; edit shift templates, rosters, holidays and swaps; run reports.

Payroll & compliance

Start and advance a payroll cycle, review it, apply overrides, disburse; generate filings, registers and Form 16.
The full list is in the tool catalog.

Guardrails

Every tool declares the permission it needs, and scope-checked tools verify the subject employee is in the actor’s scope. Both are enforced by the same code the web app uses — not reimplemented for MCP.
An agent acting as you cannot approve your own requests.
Mutations through MCP land in the same audit log as mutations through the web app, attributed to the bound employee.
Deleting a holiday, disbursing payroll, filing a compliance return and generating Form 16 all require an explicit human “yes” in the conversation before the agent calls them. See Security.

Where to go next

Quickstart for agents

Written for the agent: conventions, discovery, and how to not get things wrong.

Connect a client

Claude, Claude Code, or ChatGPT.

Tool catalog

All 71 tools with permissions and read/write annotations.

Troubleshooting

401s, missing tools, refused writes.