Shiftyasan Shift Scheduling — Claude Code MCP server for rosters
Wires the Shiftyasan shift solver into your agent, which then builds rosters from demand, availability and fairness rules. Useful when a schedule has to be produced by AI, not by hand.
claude mcp add --transport http mcp-server https://api.shiftyasan.com/mcpWhat Shiftyasan Shift Scheduling does
Three tools land in the agent. validate_shift_input checks a SolveRequest payload against the public API schema without touching the solver. solve_shift runs it: small and medium problems answer right away, while large ones (around 25 employees and up) get queued and come back as 202 with a job_id. get_solve_job polls that job until it reaches completed or failed.
The plan_shift prompt makes the agent interview you for the period and context instead of inventing inputs. Claude exposes it as /mcp__shiftyasan__plan_shift. It also tells the agent to print the finished roster one row per person with totals on the right, since that is how a shift manager scans a schedule.
Some schema fields get accepted and then dropped in translation: avoided_shift preferences, the upper bound in working_days_per_week.max, and the require rule in employee_pairings. Both tools print a warning naming what was dropped, so the agent will not claim those were honored. Running locally needs Node.js 20 or newer plus an sk_live_... key from the dashboard. The remote server at https://api.shiftyasan.com/mcp is the recommended route: the key is issued during connection and Node.js is not involved.
What it helps with
- build a shift roster for a period from staffing demand
- check schedule input before spending a solver call
- wait out a large problem by polling its
job_id - factor in employee availability and fairness rules
- get a roster as rows with per-person totals
Example prompts for the agent
- Build next week's shift schedule from the demand and availability data
- Validate my
SolveRequestbefore running the solver - Print the finished roster one row per person with totals on the right
How to install Shiftyasan Shift Scheduling
1Platform CLI: remote server
claude mcp add --transport http mcp-server https://api.shiftyasan.com/mcp2Platform CLI
claude mcp add --env SHIFTYASAN_API_KEY=<SHIFTYASAN_API_KEY> --env SHIFTYASAN_BASE_URL=<SHIFTYASAN_BASE_URL> --transport stdio shiftyasan-shift-scheduling -- npx -y @shiftyasan/mcp-serverReplace <…> with your own values
1Platform CLI: remote server
codex mcp add shiftyasan-shift-scheduling --url https://api.shiftyasan.com/mcp2Platform CLI
codex mcp add shiftyasan-shift-scheduling --env SHIFTYASAN_API_KEY=<SHIFTYASAN_API_KEY> --env SHIFTYASAN_BASE_URL=<SHIFTYASAN_BASE_URL> -- npx -y @shiftyasan/mcp-serverReplace <…> with your own values
Config file
{
"mcpServers": {
"shiftyasan-shift-scheduling": {
"url": "https://api.shiftyasan.com/mcp"
}
}
}{
"mcpServers": {
"shiftyasan-shift-scheduling": {
"command": "npx",
"args": [
"-y",
"@shiftyasan/mcp-server"
],
"env": {
"SHIFTYASAN_API_KEY": "<SHIFTYASAN_API_KEY>",
"SHIFTYASAN_BASE_URL": "<SHIFTYASAN_BASE_URL>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"shiftyasan-shift-scheduling": {
"type": "http",
"url": "https://api.shiftyasan.com/mcp"
}
}
}{
"servers": {
"shiftyasan-shift-scheduling": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@shiftyasan/mcp-server"
],
"env": {
"SHIFTYASAN_API_KEY": "<SHIFTYASAN_API_KEY>",
"SHIFTYASAN_BASE_URL": "<SHIFTYASAN_BASE_URL>"
}
}
}
}Replace <…> with your own values
1Platform CLI: remote server
gemini mcp add -t http shiftyasan-shift-scheduling https://api.shiftyasan.com/mcp2Platform CLI
gemini mcp add -e SHIFTYASAN_API_KEY=<SHIFTYASAN_API_KEY> -e SHIFTYASAN_BASE_URL=<SHIFTYASAN_BASE_URL> shiftyasan-shift-scheduling npx -y @shiftyasan/mcp-serverReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Shiftyasan Shift Scheduling
How do I install Shiftyasan Shift Scheduling in Claude Code?
For the remote server: claude mcp add --transport http shiftyasan-shift-scheduling https://api.shiftyasan.com/mcp. For a local run: `claude mcp add --env SHIFTYASAN_API_KEY=<SHIFTYASAN_API_KEY> --env SHIFTYASAN_BASE_URL=<SHIFTYASAN_BASE_URL> --transport stdio shiftyasan-shift-scheduling -- npx -y @shiftyasan/mcp-server`.
What does Shiftyasan Shift Scheduling do?
It exposes the public shift-scheduling solver as agent tools: input validation, running the solver, and polling an async job. The plan_shift prompt guides the agent through assembling a schedule.
Which constraints does the solver ignore?
The schema takes avoided_shift, working_days_per_week.max and the require rule in employee_pairings, but the solver does not apply them. The tools warn you about exactly what was dropped.