paymo-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PAYMO_TOOLS | No | Comma-separated tool names, additive on top of the toolsets. Matched exactly as registered. | |
| PAYMO_API_KEY | Yes | Paymo API key used with HTTP Basic auth. Required. | |
| PAYMO_BASE_URL | No | API base URL. Default: https://app.paymoapp.com/api | https://app.paymoapp.com/api |
| PAYMO_TOOLSETS | No | Comma-separated toolset names, plus the keywords default and all. Case-insensitive and whitespace-tolerant. Default: default | default |
| PAYMO_READ_ONLY | No | Deprecated. Use PAYMO_PERMISSION_MODE. true maps to readonly, false to modify. | |
| PAYMO_STATUS_ALIASES | No | JSON object overriding status aliases, e.g. {"wip":123,"done":456}. Keys are slugified, values must be positive integers. | |
| PAYMO_PERMISSION_MODE | No | One of readonly, modify, full. Default: modify | modify |
| PAYMO_DEFAULT_PROJECT_ID | No | Project used when a project id argument is omitted. | |
| PAYMO_DENIED_TOOLS_REGEX | No | One JS regex, matched against tool names and subtracted from the resolved set last. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| paymo_meA | Returns the authenticated Paymo user (id, name, email, timezone, workflows, assigned projects). |
| paymo_list_workflow_statusesA | List the workflow statuses available in Paymo (id, name, seq, action) — useful to map status_id to a human name. |
| paymo_list_projectsA | List Paymo projects the user has access to, with the documented field subset. |
| paymo_list_tasklistsA | List tasklists (columns) for a project, or across all tasks when unset. |
| paymo_list_tasksB | List tasks, defaults to incomplete tasks of the configured project. |
| paymo_get_taskA | Fetch a Paymo task by numeric id or human code. |
| paymo_create_taskA | Create a new Paymo task. Requires a name and either a project_id or a tasklist_id. Optional: description, due_date (YYYY-MM-DD), priority (100/75/50/25), users (list of user ids). |
| paymo_update_taskA | Update a Paymo task. status accepts a numeric id or a slug alias (e.g. in_progress). Do not send complete and status together: Paymo forces the status to Complete when completing and to Backlog when reopening, so the status argument would be overwritten. |
| paymo_add_commentB | Add a comment to a Paymo task. |
| paymo_timer_statusA | Returns the running Paymo time entry for the authenticated user, or null if no timer is active. |
| paymo_start_timerA | Start a running Paymo time entry on a task. Any running timer for the user is closed first to avoid concurrency. |
| paymo_stop_timerA | Stop the running Paymo time entry of the authenticated user. No-op if none is active. If the entry is under a minute old Paymo may refuse the stop; delete it with paymo_delete_entry instead. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool targets a unique resource/action combination: tasks, tasklists, projects, statuses, comments, and timers are all clearly separated. No two tools appear to do the same thing, so an agent can reliably select the right one.
Most tools follow the paymo_verb_noun pattern (get_task, create_task, update_task, start_timer). Minor deviations like paymo_me and paymo_timer_status are still understandable and do not cause confusion, but they break the predominant pattern slightly.
Twelve tools is appropriate for a project management server covering tasks, projects, workflows, comments, and time tracking. Each tool has a clear purpose and the set is not bloated.
The core task lifecycle (create, get, list, update) is covered, along with useful supporting features like comments and timers. However, task deletion is missing, and the stop_timer description references a non-existent paymo_delete_entry tool, indicating an incomplete surface.