Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@aputime/mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
APUtime MCP Server
The APUtime MCP Server allows you to integrate APUtime capabilities directly into various AI assistants and coding environments.
Security Disclaimer
The APUtime MCP server is entirely safe and secure to install. It relies solely on standard official libraries (such as
the official @modelcontextprotocol/sdk and zod) and has zero runtime external dependencies to install when
executed. All necessary code is securely bundled locally before deployment.
Since this package is published to npm and handles authentication with the APUtime API, it is crucial to keep your personal credentials secure:
- Never commit your
APUTIME_API_KEYto version control. - Avoid exposing your credentials in public scripts or CI/CD pipelines without proper secret management.
- Ensure that the execution environment for the MCP server is secure and trusted.
Configuration
The server requires specific environment variables to authenticate with your APUtime workspace. You can obtain these from your APUtime settings (https://app.aputime.com/settings/integrations).
Environment Variables
APUTIME_APP_NAME(Required): Your APUtime application name.APUTIME_API_KEY(Required): Your APUtime API key.
Client Setup Examples
opencode
Add the following configuration to your opencode settings:
{
"mcp": {
"aputime": {
"type": "local",
"enabled": true,
"command": [
"npx",
"-y",
"@aputime/mcp@latest"
],
"environment": {
"APUTIME_APP_NAME": "YOUR_WORKSPACE_NAME",
"APUTIME_API_KEY": "YOUR_API_TOKEN"
}
}
}
}Zed
Add the following to your Zed settings.json in the mcp section:
{
"mcp": {
"aputime": {
"command": "npx",
"args": [
"-y",
"@aputime/mcp@latest"
],
"env": {
"APUTIME_APP_NAME": "YOUR_WORKSPACE_NAME",
"APUTIME_API_KEY": "YOUR_API_TOKEN"
}
}
}
}Claude Desktop
Add the following to your claude_desktop_config.json:
{
"mcpServers": {
"aputime": {
"command": "npx",
"args": [
"-y",
"@aputime/mcp@latest"
],
"env": {
"APUTIME_APP_NAME": "YOUR_WORKSPACE_NAME",
"APUTIME_API_KEY": "YOUR_API_TOKEN"
}
}
}
}Windsurf
Add the following to your mcp_config.json:
{
"mcpServers": {
"aputime": {
"command": "npx",
"args": [
"-y",
"@aputime/mcp@latest"
],
"env": {
"APUTIME_APP_NAME": "YOUR_WORKSPACE_NAME",
"APUTIME_API_KEY": "YOUR_API_TOKEN"
}
}
}
}LibreChat
Add the following to your librechat.yaml:
mcpServers:
aputime:
type: stdio
command: npx
args:
- "-y"
- "@aputime/mcp@latest"
env:
APUTIME_APP_NAME: "YOUR_WORKSPACE_NAME"
APUTIME_API_KEY: "YOUR_API_TOKEN"TOOLS
---start-tools---
create_project
Creates a new TicketProject in APUtime. Can be created empty or from a template
Parameters:
- name (
string) (required): TicketProject name. min: 1 chars. max: 255 chars - description (
string): TicketProject description - start (
string): Postpone date in ISO format (e.g., "2024-05-13 00:00") - end (
string): Deadline date in ISO format (e.g., "2024-06-13 00:00") - id_ticket_template (
string): TicketTemplate - Search 'list_ticket_templates' for required ID - id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- scheduling (
boolean): Enable AI scheduling for this TicketProject - default_user_role (
string): Default role for users. one of: "participant", "participant_isolated"- Allowed values:
participant,participant_isolated
- Allowed values:
- default_admin_role (
string): Default role for managers. one of: "manager", "participant", "participant_isolated"- Allowed values:
manager,participant,participant_isolated
- Allowed values:
create_ticket
Creates a new Ticket/Task in APUtime. For events (type='event'), both start and end times are required.
Parameters:
- name (
string) (required): Ticket/Task name. min: 1 chars. max: 255 chars - id_ticket_project (
string) (required): TicketProject - Search 'list_ticket_projects' for required ID - description (
string): Ticket/Task description - type (
string) (required): "task" for regular Ticket/Tasks, "event" for strictly scheduled events. one of: "task", "event"- Allowed values:
task,event
- Allowed values:
- start (
string): Postpone date in ISO format (e.g., "2024-05-13 00:00"); (required for events) - end (
string): Deadline date in ISO format (e.g., "2024-06-13 00:00"); (required for events) - estimated_minutes (
number): Estimated time in minutes (default: 45 for Ticket/Tasks). integer - id_ticket_person (
array): TicketPerson/User - Search 'list_ticket_persons' for required IDs; Solver(s). array- Items type:
string
- Items type:
- id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs; Group Solvers(s). array- Items type:
string
- Items type:
- cooperation_mode (
boolean): Enable group cooperation mode. When enabled, all solvers are scheduled at the coordinated time. Only on explicit request. - id_ticket_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs. array- Items type:
string
- Items type:
get_ticket
Retrieves detailed information about a specific Ticket/Task by ID
Parameters:
- id_ticket (
string) (required): Ticket/Task ID
get_ticket_person
Retrieves detailed information about a specific TicketPerson/User by ID
Parameters:
- id_ticket_person (
string) (required): TicketPerson/User ID
get_ticket_project
Retrieves detailed information about a specific TicketProject by ID
Parameters:
- id_ticket_project (
string) (required): TicketProject ID
list_groups
Lists and Searches Groups/UserGroups in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_persons
Lists and Searches TicketPersons/Users in APUtime
Parameters:
- query (
string): Fulltext search query - id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_project_budget_types
Lists and Searches TicketProjectBudgetTypes in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_project_expense_types
Lists and Searches TicketProjectExpenseTypes in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_project_income_types
Lists and Searches TicketProjectIncomeTypes in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_project_tags
Lists and Searches TicketProjectTags/Categories in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_projects
Lists and Searches TicketProjects in APUtime
Parameters:
- query (
string): Fulltext search query - context (
array): Context filter. array- Items type:
string
- Items type:
- id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- id_creator (
array): TicketPerson/Author - Search 'list_ticket_persons' for required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_tags
Lists and Searches TicketTags/Labels in APUtime
Parameters:
- query (
string): Fulltext search query - next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_templates
Lists and Searches TicketTemplates in APUtime
Parameters:
- query (
string): Fulltext search query - id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- id_creator (
array): TicketPerson/Author - Search 'list_ticket_persons' for required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_ticket_timers
Lists time tracking entries in APUtime. Returns timer records showing which Ticket/Tasks have been timed and their durations
Parameters:
- query (
string): Fulltext search query - context (
array): Context filter. array- Items type:
string
- Items type:
- id_creator (
array): TicketPerson/Author - Search 'list_ticket_persons' for required IDs. array- Items type:
string
- Items type:
- id_ticket_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs. array- Items type:
string
- Items type:
- id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs. array- Items type:
string
- Items type:
- id_ticket (
array): Ticket - Search 'list_tickets' for list of required IDs. array- Items type:
string
- Items type:
- id_ticket_project (
array): TicketProject - Search 'list_ticket_projects' for list of required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
list_tickets
Lists and Searches Tickets/Tasks in APUtime
Parameters:
- query (
string): Fulltext search query - context (
array): Context filter. array- Items type:
string
- Items type:
- id_ticket_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs. array- Items type:
string
- Items type:
- id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- id_ticket_person (
array): TicketPerson/User - Search 'list_ticket_persons' for required IDs; TicketPerson is Solver.. array- Items type:
string
- Items type:
- id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs; Has Solver from Group.. array- Items type:
string
- Items type:
- id_ticket_project (
array): TicketProject - Search 'list_ticket_projects' for list of required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
my_schedule
Shows Current My Schedule plan in APUtime
Parameters:
- query (
string): Fulltext search query - context (
array): Context filter. array- Items type:
string
- Items type:
- id_ticket_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs. array- Items type:
string
- Items type:
- id_ticket_project_tag (
array): TicketProjectTag/Category - Search 'list_ticket_project_tags' for required IDs. array- Items type:
string
- Items type:
- id_ticket_person (
array): TicketPerson/User - Search 'list_ticket_persons' for required IDs; TicketPerson is Solver.. array- Items type:
string
- Items type:
- id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs; Has Solver from Group.. array- Items type:
string
- Items type:
- id_ticket_project (
array): TicketProject - Search 'list_ticket_projects' for list of required IDs. array- Items type:
string
- Items type:
- next_token (
string): Pagination next token - limit (
number): Number of results (max recommended: 13 and use next_token). integer. max: 21
send_chat_message
Sends a chat message in APUtime. Supports three destination types: project-wide, task-specific, or channel messages. Messages support rich formatting (bold, italic, strikethrough, links, code blocks, lists).
Message types:
- 'projectMessage' — Sends to a project chat (requires project_id)
- 'taskMessage' — Sends to a task thread (requires task_id)
- 'channelMessage' — Sends to a chat channel (requires channel_id)
Parameters:
- message_type (
string) (required): Type of chat destination. one of: "projectMessage", "taskMessage", "channelMessage"- Allowed values:
projectMessage,taskMessage,channelMessage
- Allowed values:
- project_id (
string) (required): TicketProject - Search 'list_ticket_projects' for required ID - task_id (
string) (required): Ticket - Search 'list_tickets' for required ID - channel_id (
string): Channel ID (required for channelMessage) - operations (
array) (required): Message content segments. array. min: 1 items- Items type:
object
- Items type:
- reply_message_id (
string): Reply in thread to this message ID
update_ticket
Updates an existing Ticket in APUtime. Supports partial updates — only provided fields are changed
Parameters:
- id_ticket (
string) (required): Ticket - Search 'list_tickets' for required ID - name (
string): Ticket/Task name. min: 1 chars. max: 255 chars - id_ticket_project (
string): TicketProject - Search 'list_ticket_projects' for required ID; Move to different TicketProject (ID) - description (
string): Ticket/Task description - type (
string): "task" for regular Ticket/Tasks, "event" for strictly scheduled events. one of: "task", "event"- Allowed values:
task,event
- Allowed values:
- start (
string): Postpone date in ISO format (e.g., "2024-05-13 00:00"); (required for events) - end (
string): Deadline date in ISO format (e.g., "2024-06-13 00:00"); (required for events) - estimated_minutes (
number): Estimated time in minutes (default: 45 for Ticket/Tasks). integer - id_ticket_person (
array): TicketPerson/User - Search 'list_ticket_persons' for required IDs; New Solver(s). array- Items type:
string
- Items type:
- id_group (
array): Group/UserGroup - Search 'list_groups' for required IDs; New Group Solvers(s). array- Items type:
string
- Items type:
- cooperation_mode (
boolean): Enable group cooperation mode. When enabled, all solvers are scheduled at the coordinated time. Only on explicit request. - id_ticket_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs; New label IDs (merged with current). array- Items type:
string
- Items type:
- solver_mode (
string): How to apply solver changes. Replace/Reassign or Merge/Append. one of: "replace", "merge"- Allowed values:
replace,merge
- Allowed values:
update_ticket_project
Updates an existing TicketProject in APUtime. Supports partial updates — only provided fields are changed
Parameters:
- id_ticket_project (
string) (required): TicketProject - Search 'list_ticket_projects' for required ID - name (
string): TicketProject name. min: 1 chars. max: 255 chars - start (
string): Postpone date in ISO format (e.g., "2024-05-13 00:00") - end (
string): Deadline date in ISO format (e.g., "2024-06-13 00:00") - description (
string): TicketProject description - id_ticket_project_tag (
array): TicketTag/Label - Search 'list_ticket_tags' for required IDs; New category IDs (merged with current). array- Items type:
string
- Items type:
- scheduling (
boolean): Enable AI scheduling for this TicketProject
update_ticket_solver
Updates an existing TicketSolver in APUtime. Supports partial updates — only provided fields are changed. Important: When users asks to close the task, you should ask if they mean to set the status for all solvers or the specific one.
Parameters:
- id_ticket_solver (
string) (required): TicketSolver - Search in Ticket.TicketSolver 'get_ticket' for required ID - status (
string): TicketSolver Status. one of: "open", "working_now", "resolved", "rejected_and_closed"- Allowed values:
open,working_now,resolved,rejected_and_closed
- Allowed values:
whoami
Retrieves detailed information about the currently authenticated TicketPerson/User.
When the users asks to use 'self', 'me', this tool will return the currenlty logged in user information. This can be used to personalize responses, or to provide user-specific data in follow-up interactions.
---end-tools---