kennel.work
kennel is an open-source task list application with tasks, projects, and labels, plus a web dashboard. It lets apps and AI agents read and modify that task data over HTTP and MCP.
kennel.work exposes two developer integration surfaces: a REST API at `https://kennel.work/api/v1` with OpenAPI at `https://kennel.work/openapi.json`, and an OAuth-protected remote MCP server at `https://kennel.work/mcp`; both accept kennel API keys, and both also support OAuth 2.1 bearer tokens.
- kennel MCP serverdetected
- kennel REST APIdetected
Point your MCP client at the server URL and approve access in the browser. The server supports OAuth Dynamic Client Registration (RFC 7591), so the client registers itself automatically — no developer-portal app, client_id, or client_secret to create.
Sign in at https://kennel.work and create a key on the API keys page.
Keys are prefixed kn_ and are shown once, so copy the value when it is created. Every key carries both tasks:read and tasks:write; there is no way to scope one down, so use OAuth when a client should hold narrower or shorter-lived access.
Send it either as Authorization: Bearer kn_... or as x-api-key: kn_....
Register a client on the OAuth page, or let the client register itself through dynamic client registration at https://kennel.work/api/auth/oauth2/register.
Run the authorization code flow with PKCE against the issuer https://kennel.work/api/auth; its metadata lives at https://kennel.work/.well-known/oauth-authorization-server/api/auth. Request tasks:read, tasks:write, or both.
Clients that cannot open a browser redirect can use the device authorization grant: POST https://kennel.work/api/auth/device/code, send the user to https://kennel.work/device with the user code, then poll https://kennel.work/api/auth/oauth2/token with grant_type=urn:ietf:params:oauth:grant-type:device_code.
Send the resulting access token as Authorization: Bearer <token>. Users can revoke authorized apps from the same page.
conventions · 6/8 published
- integrations.json✓https://kennel.work/.well-known/integrations.json
- llms.txt✓https://kennel.work/llms.txt
- API catalog✓https://kennel.work/.well-known/api-catalog
- OpenAPI document✓https://kennel.work/openapi.json
- MCP server card✓https://kennel.work/mcp
- OAuth protected resource✓https://kennel.work/.well-known/oauth-protected-resource
- Agent card✗
/.well-known/agent-card.json - Agent skills✗
/.well-known/agent-skills/index.json
Publish these signals → /publishing