For agents
NoticeAhead for agents
Assistants and agent runtimes can read a workspace's contracts and work out notice deadlines over the Model Context Protocol, without custom glue on your side. Point the client at one URL and give it a workspace API token.
The endpoint
- URL
- https://noticeahead.com/mcp
- Transport
- streamable HTTP (POST)
- Authentication
- Authorization: Bearer <token>
- Alternative header
- X-Api-Key: <token>
A request without a valid token is refused with 401. A token belongs to one workspace: it never exposes another workspace's contracts, and revoking it in the app stops access immediately.
Getting a token
The workspace owner creates API tokens in the app under Workspace → API tokens, gives each one a name, and can revoke it there. The token is shown once, when it is created. It is read-only and organisation-scoped: the same token also works for /api/v1/contracts.
Tools
| Tool | Arguments | Returns |
|---|---|---|
| list_contracts | limit (1-200, default 200) | The workspace's contracts, each with its computed notice_deadline, decision_deadline and days_until_notice. |
| notice_deadline | term_end_date, notice_period, notice_unit, preparation_buffer_days | The notice and decision deadlines for one contract term, with the steps used and any warnings. No workspace data is read. |
| get_contract | contract_id | One contract of the workspace: parties, term dates, notice period and unit, the computed notice_deadline, decision_deadline, days_until_notice, the status and any reminders. A contract of another workspace is never returned. |
| list_expiring_contracts | days (1-365, default 30), deadline (notice|decision, default notice), limit (1-200, default 50) | The workspace's contracts whose notice or decision deadline falls in the next N days, oldest first. |
| renewal_calendar | months (1-24, default 3) | The workspace's contracts grouped by the month their term ends, with the notice and decision deadlines that drive the renewal. |
| deadline_rules | none | The deadline-calculation rules as text, quoted from the shipped rules document. No workspace data is read. |
Every tool is read-only and scoped to your workspace. The contract tools reuse the same API described in /llms.txt and the same deadline engine as the free calculator.
Connecting a client
Clients that support remote (streamable HTTP) MCP servers need two things: the URL and the token as a header. JSON-configured clients use a shape like this - VS Code keeps the same fields under servers, and other clients only differ in the key names:
{
"mcpServers": {
"noticeahead": {
"type": "http",
"url": "https://noticeahead.com/mcp",
"headers": {
"Authorization": "Bearer <token>"
}
}
}
}
| Client | Where the server is added |
|---|---|
| Claude (desktop or web) | Settings → Connectors → Add custom connector, then paste the URL. Where the client asks for a token or header, use your API token. |
| Cursor | MCP settings, or ~/.cursor/mcp.json with the entry above. |
| VS Code / Copilot | .vscode/mcp.json (workspace) or the user MCP settings, using the same URL and header. |
| Codex CLI | ~/.codex/config.toml, adding a remote MCP server with this URL and an Authorization header. |
A client that can only launch a local process can run the same tools over stdio instead: python mcp_server.py.