WH MCP
MCP server for WH read scenarios. This page documents the available tools, required input parameters, the MCP endpoint, and the header-based WH authentication model used by hosted MCP clients.
Tools
34 availableCalendar
2 toolswh_get_current_calendar Calendar WH auth required
Returns the current WH calendar snapshot.
wh_get_month_calendar Calendar WH auth required
Returns the WH calendar for a given year and month.
| Name | Type | Required | Description |
|---|---|---|---|
year |
integer | Yes | Four-digit calendar year. |
month |
integer | Yes | Calendar month from 1 to 12. |
Dayoffs
5 toolswh_create_dayoff_request Dayoffs WH auth required
Previews or creates a WH dayoff request. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
userId |
string | Yes | WH user id. |
startDate |
string | Yes | ISO start date YYYY-MM-DD. |
endDate |
string | Yes | ISO end date YYYY-MM-DD. |
type |
string | Yes | Dayoff type. |
description |
string | Yes | Dayoff description. |
dateWorkOff |
string | Yes | Optional work-off date YYYY-MM-DD or empty string. |
workOff |
integer | Yes | 1 if work-off is required, otherwise 2. |
confirm |
boolean | No | Execute the write. Defaults to false. |
wh_get_dayoff Dayoffs WH auth required
Returns a single WH dayoff by id.
| Name | Type | Required | Description |
|---|---|---|---|
dayoffId |
string | Yes | WH dayoff id. |
wh_get_dayoffs_overview Dayoffs WH auth required
Builds a read-only dayoff overview for a date range, defaulting to the current week.
| Name | Type | Required | Description |
|---|---|---|---|
startDate |
string | No | Optional ISO start date YYYY-MM-DD. |
endDate |
string | No | Optional ISO end date YYYY-MM-DD. |
userId |
string | No | Optional user id. |
limit |
integer | No | Maximum number of dayoffs to return. |
wh_list_dayoffs Dayoffs WH auth required
Lists WH dayoffs with optional user and date range filters.
| Name | Type | Required | Description |
|---|---|---|---|
userId |
string | No | Optional user id. |
startDate |
string | No | Optional ISO start date YYYY-MM-DD. |
endDate |
string | No | Optional ISO end date YYYY-MM-DD. |
limit |
integer | No | Maximum number of dayoffs to return. |
wh_update_dayoff_request Dayoffs WH auth required
Previews or updates a WH dayoff request. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
dayoffId |
string | Yes | WH dayoff id. |
userId |
string | Yes | WH user id. |
startDate |
string | Yes | ISO start date YYYY-MM-DD. |
endDate |
string | Yes | ISO end date YYYY-MM-DD. |
type |
string | Yes | Dayoff type. |
description |
string | Yes | Dayoff description. |
dateWorkOff |
string | Yes | Optional work-off date YYYY-MM-DD or empty string. |
workOff |
integer | Yes | 1 if work-off is required, otherwise 2. |
confirm |
boolean | No | Execute the write. Defaults to false. |
Hours
3 toolswh_create_hour_entry Hours WH auth required
Previews or creates a WH hour entry. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
amount |
number | Yes | Hour amount. |
comment |
string | Yes | Hour comment. |
status |
string | Yes | Hour status. |
userId |
string | Yes | WH user id. |
date |
string | Yes | Date in ISO format YYYY-MM-DD. |
taskId |
string | Yes | WH task id. |
confirm |
boolean | No | Execute the write. Defaults to false. |
wh_get_day_hours Hours WH auth required
Returns all WH hour entries for a specific day.
| Name | Type | Required | Description |
|---|---|---|---|
date |
string | Yes | Date in ISO format YYYY-MM-DD. |
wh_update_hour_entry Hours WH auth required
Previews or updates a WH hour entry. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
hourId |
integer | Yes | WH hour entry id. |
amount |
number | Yes | Hour amount. |
comment |
string | Yes | Hour comment. |
status |
string | Yes | Hour status. |
userId |
string | Yes | WH user id. |
date |
string | Yes | Date in ISO format YYYY-MM-DD. |
taskId |
string | Yes | WH task id. |
confirm |
boolean | No | Execute the write. Defaults to false. |
Insights
2 toolswh_get_dashboard_context Insights WH auth required
Builds the current dashboard context for a day, including today and week-level signals.
| Name | Type | Required | Description |
|---|---|---|---|
date |
string | No | Optional ISO date YYYY-MM-DD. Defaults to today. |
wh_review_current_week Insights WH auth required
Summarizes the current work week and highlights missing hours per day.
| Name | Type | Required | Description |
|---|---|---|---|
date |
string | No | Optional ISO date YYYY-MM-DD used as the week anchor. |
News
3 toolswh_get_news_digest News WH auth required
Builds a compact WH news digest with top-rated and latest items.
| Name | Type | Required | Description |
|---|---|---|---|
search |
string | No | Optional search string. |
sort |
string | No | Sort field: date, title, or rating. |
order |
string | No | Sort order: asc or desc. |
limit |
integer | No | Maximum number of news items to return. |
wh_get_news_item News WH auth required
Returns a single WH news item by id.
| Name | Type | Required | Description |
|---|---|---|---|
newsId |
string | Yes | WH news item id. |
wh_list_news News WH auth required
Lists WH news items with optional search and sorting.
| Name | Type | Required | Description |
|---|---|---|---|
search |
string | No | Optional search string for news title. |
sort |
string | No | Sort field: date, title, or rating. |
order |
string | No | Sort order: asc or desc. |
limit |
integer | No | Maximum number of news items to return. |
People
6 toolswh_get_user People WH auth required
Returns a WH user by id.
| Name | Type | Required | Description |
|---|---|---|---|
userId |
integer | Yes | WH user id. |
wh_list_birthdays People WH auth required
Lists WH birthdays for a month or a specific day.
| Name | Type | Required | Description |
|---|---|---|---|
month |
integer | Yes | Month from 1 to 12. |
day |
integer | No | Optional day of month. |
limit |
integer | No | Maximum number of birthdays to return. |
wh_list_locations People WH auth required
Lists WH locations.
wh_list_teams People WH auth required
Lists WH teams.
| Name | Type | Required | Description |
|---|---|---|---|
limit |
integer | No | Maximum number of teams to return. |
wh_search_contacts People WH auth required
Searches WH contacts and returns a compact directory view with team and location facets.
| Name | Type | Required | Description |
|---|---|---|---|
query |
string | No | Optional contact name search string. |
status |
string | No | Optional user status. Defaults to Active. |
teamId |
string | No | Optional team id. |
locationId |
string | No | Optional location id. |
limit |
integer | No | Maximum number of contacts to return. |
wh_search_users People WH auth required
Searches WH users by name with optional status, team, and location filters.
| Name | Type | Required | Description |
|---|---|---|---|
query |
string | No | Optional user name search string. |
status |
string | No | Optional user status. Defaults to Active. |
teamId |
string | No | Optional team id. |
locationId |
string | No | Optional location id. |
limit |
integer | No | Maximum number of users to return. |
Profile
1 toolswh_get_current_user Profile WH auth required
Returns the current WH user profile.
Projects
5 toolswh_find_projects Projects WH auth required
Finds WH projects with optional local filtering by name and API filters.
| Name | Type | Required | Description |
|---|---|---|---|
query |
string | No | Case-insensitive project name filter. |
status |
string | No | Project status filter such as Open or Closed. |
employeeId |
string | No | Optional employee id filter. |
teamId |
string | No | Optional team id filter. |
isInternal |
boolean | No | Whether to fetch only internal or external projects. |
limit |
integer | No | Maximum number of matching projects to return. |
wh_get_project Projects WH auth required
Returns a single WH project by id.
| Name | Type | Required | Description |
|---|---|---|---|
projectId |
string | Yes | WH project id. |
wh_get_project_context Projects WH auth required
Returns project details, total hours, and currently available tasks for a project.
| Name | Type | Required | Description |
|---|---|---|---|
projectId |
string | Yes | WH project id. |
taskLimit |
integer | No | Maximum number of project tasks to include. |
wh_get_project_total_hours Projects WH auth required
Returns total WH hours for a project.
| Name | Type | Required | Description |
|---|---|---|---|
projectId |
string | Yes | WH project id. |
wh_list_phases Projects WH auth required
Lists WH phases.
| Name | Type | Required | Description |
|---|---|---|---|
limit |
integer | No | Maximum number of phases to return. |
Service
1 toolswh_healthcheck Service No WH auth
Returns the WH MCP server health status.
Tasks
4 toolswh_create_task Tasks WH auth required
Previews or creates a WH task. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
userId |
string | Yes | WH user id. |
estimationTime |
number | Yes | Estimated time in hours. |
taskManagerLink |
string | No | Optional external task tracker link. |
name |
string | Yes | Task name. |
descriptions |
string | Yes | Task description. |
startDate |
string | Yes | ISO start date YYYY-MM-DD. |
endDate |
string | Yes | ISO end date YYYY-MM-DD. |
currentStatus |
string | Yes | Task status code. |
phaseId |
integer | Yes | WH phase id. |
confirm |
boolean | No | Execute the write. Defaults to false. |
wh_find_tasks Tasks WH auth required
Finds WH tasks, optionally within a phase and with a client-side name filter.
| Name | Type | Required | Description |
|---|---|---|---|
query |
string | No | Case-insensitive task name filter. |
phaseId |
string | No | Optional phase id. |
timePeriodStatus |
string | No | Optional task period filter such as active or overdue. |
date |
string | No | Optional ISO date YYYY-MM-DD used for phase tasks endpoint. |
limit |
integer | No | Maximum number of matching tasks to return. |
wh_get_task Tasks WH auth required
Returns a single WH task by id.
| Name | Type | Required | Description |
|---|---|---|---|
taskId |
string | Yes | WH task id. |
wh_update_task Tasks WH auth required
Previews or updates a WH task. Set confirm=true to execute the write.
| Name | Type | Required | Description |
|---|---|---|---|
taskId |
string | Yes | WH task id. |
userId |
string | Yes | WH user id. |
estimationTime |
number | Yes | Estimated time in hours. |
taskManagerLink |
string | No | Optional external task tracker link. |
name |
string | Yes | Task name. |
descriptions |
string | Yes | Task description. |
startDate |
string | Yes | ISO start date YYYY-MM-DD. |
endDate |
string | Yes | ISO end date YYYY-MM-DD. |
currentStatus |
string | Yes | Task status code. |
phaseId |
integer | Yes | WH phase id. |
confirm |
boolean | No | Execute the write. Defaults to false. |
Worklog
2 toolswh_explain_missing_hours Worklog WH auth required
Explains why hours are missing for the selected day and current week, with suggested next actions.
| Name | Type | Required | Description |
|---|---|---|---|
date |
string | No | Optional ISO date YYYY-MM-DD. Defaults to today. |
projectQuery |
string | No | Optional project name filter for suggested worklog candidates. |
projectLimit |
integer | No | Maximum number of suggested projects. |
taskLimit |
integer | No | Maximum number of suggested tasks. |
wh_prepare_day_worklog Worklog WH auth required
Prepares read-only context for filling a day's hours: current entries, missing hours, suggested projects, and suggested tasks.
| Name | Type | Required | Description |
|---|---|---|---|
date |
string | No | Optional ISO date YYYY-MM-DD. Defaults to today. |
projectQuery |
string | No | Optional project name filter for suggested projects. |
projectLimit |
integer | No | Maximum number of suggested projects. |
taskLimit |
integer | No | Maximum number of suggested tasks. |