MCP integration
Tell your AI client you are working. Janus tracks it.
Janus hosts a Model Context Protocol server for Claude Desktop, Claude Code, and compatible clients. The connection uses your personal API key and stays scoped to your own user and company.
Step 1
Create a personal API key
Sign in to Janus, open API keys from the sidebar, name the key for the device or client, and copy the value beginning with janus_. It is shown only once.
Store the key in a password manager. It can perform the same Janus actions your account can perform.
Start free trial →Step 2
Add the hosted server
Add this server entry to the MCP configuration used by your client. It uses mcp-remote through npx, which is included with Node.js. Replace janus_… with the key you just created.
{
"mcpServers": {
"janus": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://januskit.com/mcp/",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Api-Key janus_…"
}
}
}
}
The AUTH_HEADER environment value is intentional: it preserves the space in the authorization header when mcp-remote launches.
Claude Code: save the block as .mcp.json in a project root. For private local or user-wide configuration, add the same server object with claude mcp add-json and the appropriate scope.
Claude Desktop: open Settings → Developer → Edit Config. The file is ~/Library/Application Support/Claude/claude_desktop_config.json on macOS or %APPDATA%\Claude\claude_desktop_config.json on Windows.
Native Windows: local MCP commands that use npx may need cmd /c; set command to cmd and prepend /c, npx to the arguments.
Step 3
Restart and talk
Restart the AI client so it reloads the MCP configuration, approve Janus when prompted, and use direct requests such as:
“Start tracking the API rewrite, non-billable.”
“Also track the launch project while that keeps running.”
“What did I log yesterday?”
“Create a milestone called Launch.”
“Submit today’s site Pulse.”
18 core tools
Everything the server exposes
Read state · 7
whoamilist_time_entrieslist_projectslist_milestoneslist_pulse_clientslist_pulse_tagscurrent_timer
Track time · 4
start_timerstop_timerlog_timeupdate_time_entry
Organize and availability · 3
create_milestoneset_vacation_modeset_vacation_period
Field reports · 4
get_pulse_formlist_pulsescreate_pulseupdate_pulse
Optional skill
Give Claude the Janus workflow
The optional /janus skill teaches Claude when to ask for missing fields and how to confirm changes. It is for Claude Code; Claude Desktop users can skip it.
mkdir -p ~/.claude/skills/janus curl -fsSL https://januskit.com/skills/janus/SKILL.md \ -o ~/.claude/skills/janus/SKILL.md
Run the command again whenever you want the current skill version from Janus.
Security and access
- Every tool uses the company and permissions attached to the API-key owner.
- The server does not grant an integration broader access than the user already has.
- Revoke the key immediately when a device is replaced or access may have been exposed.
Building a custom integration? The same capabilities are documented in the OpenAPI, Swagger, and ReDoc reference.