MCP Server

new-hire-onboarding-tasks

io.github.theluckystrike/new-hire-onboarding-tasks
Business & Operations Productivity Public & reachable MCP 2026-07-28

What this MCP does

Manages employee onboarding plans with role-based templates, tasks, due dates, completion tracking, and overdue reporting.

license_activate
Activate license
Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['key'], 'properties': {'key': {'type': 'string', 'description': 'License key from checkout, MCPL1.<payload>.<signature>'}}, 'additionalProperties': False}
license_status
License status
Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.
Read only Idempotent
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
onboarding_hire_add
Add a hire
Add a new hire and return its H-NNNN id: a name, a role and the day they start. The role is a grouping key, lower-cased and hyphenated. Add tasks with onboarding_task_add, or apply a role template with onboarding_template_apply.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name', 'role', 'start_date'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'description': "The hire's name, e.g. Ada Lovelace"}, 'role': {'type': 'string', 'maxLength': 60, 'description': 'The role, e.g. engineer or sales. Lower-cased and hyphenated'}, 'start_date': {'type': 'string', 'maxLength': 10, 'description': 'The day they start, YYYY-MM-DD. Task due dates are counted from here'}}, 'additionalProperties': False}
onboarding_hire_list
List hires
Every hire with their role, start date, task counts, percent complete and overdue count. Filter by role or by a word in the name. Returns at most 500 rows, newest change first.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'role': {'type': 'string', 'maxLength': 60, 'description': 'Only hires in this role, matched after the same lower-case hyphenation applied on add'}, 'contains': {'type': 'string', 'maxLength': 200, 'description': 'Only hires whose name contains this text, matched case-insensitively'}}, 'additionalProperties': False}
onboarding_overdue
List overdue tasks
Every task that is still outstanding past its due date, across all hires or one hire, with how many days late. Returns at most 500 rows, most overdue first.
Read only Idempotent
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'hire': {'type': 'string', 'maxLength': 200, 'description': "Only this hire's overdue tasks. Omit for every hire"}}, 'additionalProperties': False}
onboarding_progress
Show a hire's progress
One hire's whole plan: every task with its owner, due date and status, plus the percent complete, the overdue count and what is still outstanding. Pass as_csv for a Pro-only CSV export of the plan.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['hire'], 'properties': {'hire': {'type': 'string', 'maxLength': 200, 'description': 'The hire id, e.g. H-0001, or the name when only one carries it'}, 'as_csv': {'type': 'boolean', 'description': 'Return the plan as CSV. Pro only. Default false'}}, 'additionalProperties': False}
onboarding_task_add
Add a task to a hire
Add one task to a hire's plan and return its K01-style id: the text, who owns it (hr, manager or it) and how many days after the start date it is due. The due date is counted from the hire's start date.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['hire', 'text', 'owner', 'due_offset'], 'properties': {'hire': {'type': 'string', 'maxLength': 200, 'description': 'The hire id, e.g. H-0001, or the name when only one carries it'}, 'text': {'type': 'string', 'maxLength': 2000, 'description': 'The task, as the person doing it will read it, e.g. Issue laptop and security badge'}, 'owner': {'enum': ['hr', 'manager', 'it'], 'type': 'string', 'description': 'Who owns the task: hr, manager or it'}, 'due_offset': {'type': 'integer', 'maximum': 365, 'minimum': 0, 'description': "Days after the hire's start date the task is due. 0 is day one"}}, 'additionalProperties': False}
onboarding_task_done
Mark a task done or skipped
Mark one task on a hire done or skipped, with the day it happened. done counts toward the percent complete; skipped is a deliberate dismissal and never counts as done. A task can be set back to todo to reopen it.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['hire', 'task', 'status'], 'properties': {'date': {'type': 'string', 'maxLength': 10, 'description': 'The day it was completed, YYYY-MM-DD. Default today'}, 'hire': {'type': 'string', 'maxLength': 200, 'description': 'The hire id, e.g. H-0001, or the name when only one carries it'}, 'task': {'type': 'string', 'maxLength': 16, 'description': 'The task id, e.g. K03, as shown by onboarding_progress'}, 'status': {'enum': ['todo', 'done', 'skipped'], 'type': 'string', 'description': 'done, skipped, or todo to put it back to outstanding'}}, 'additionalProperties': False}
onboarding_template_apply
Apply a role template to a hire
Apply a role template to one hire (free) or many (Pro), copying the template's tasks into each hire with the template's version recorded. Editing the template afterwards never changes a hire already under way. If no template exists for the role, one is created from the tasks you pass.
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['hire'], 'properties': {'hire': {'type': 'string', 'maxLength': 200, 'description': 'The hire to apply the template to. Pro: pass a comma-separated list of hire ids or names to apply to many at once'}, 'role': {'type': 'string', 'maxLength': 60, 'description': "The role template to apply, by id (T-0001) or role. If omitted, the hire's own role is used"}, 'tasks': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'text': {'type': 'string', 'maxLength': 2000}, 'owner': {'enum': ['hr', 'manager', 'it'], 'type': 'string', 'default': 'manager'}, 'due_offset': {'type': 'integer', 'default': 0, 'maximum': 365, 'minimum': 0}}, 'additionalProperties': False}, 'maxItems': 500, 'description': 'When no template exists for the role, create one from these tasks and apply it. Pro only when applying to more than one hire'}}, 'additionalProperties': False}
Added
license_activate
Sept. 24, 2026, 2:40 a.m.
Added
license_status
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_overdue
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_progress
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_template_apply
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_task_done
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_task_add
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_hire_list
Sept. 24, 2026, 2:40 a.m.
Added
onboarding_hire_add
Sept. 24, 2026, 2:40 a.m.