ConnectWise PSA — Claude Code MCP server: what it does and setup
Connects your AI assistant to ConnectWise Manage for handling tickets, schedule entries, time tracking, and client records.
claude mcp add mcp-connectwise-psa -e CW_SITE=<CW_SITE> -e CW_COMPANY_ID=<CW_COMPANY_ID> -e CW_CLIENT_ID=<CW_CLIENT_ID> -e CW_PUBLIC_KEY=<CW_PUBLIC_KEY> -e CW_PRIVATE_KEY=<CW_PRIVATE_KEY> -e CW_DB_PASSWORD=<CW_DB_PASSWORD> -- npx -y mcp-connectwise-psaWhat ConnectWise PSA does
This server exposes ConnectWise PSA capabilities through eight modular toolsets. The assistant can search service and project tickets, inspect linked tasks, update priorities, and append internal discussion notes. Technicians can also look up company records, review configuration assets, and submit weekly timesheets.
Sessions run on personal keys. Because each teammate supplies member API keys, ConnectWise enforces standard permission boundaries and records user attribution on every write. Presets like tech, dispatch, and invoicing narrow the visible tool catalog, keeping the prompt context focused. For on-premises instances, a dedicated read-only T-SQL tool queries the database schema directly.
Connecting fails immediately without a free CW_CLIENT_ID registered at the ConnectWise developer portal alongside valid member API keys. The package runs locally via standard I/O or as an HTTP daemon inside a Docker container.
What it helps with
- record billable work hours against open service tickets
- review technician schedules and check availability blocks
- retrieve client configuration items and hardware serial numbers
- inspect unbilled time and active customer agreements
Example prompts for the agent
- List all high priority tickets assigned to me right now
- Log 30 minutes on ticket 45210 under Remote Support
- Check engineer availability for tomorrow morning
How to install ConnectWise PSA
Platform CLI
claude mcp add mcp-connectwise-psa -e CW_SITE=<CW_SITE> -e CW_COMPANY_ID=<CW_COMPANY_ID> -e CW_CLIENT_ID=<CW_CLIENT_ID> -e CW_PUBLIC_KEY=<CW_PUBLIC_KEY> -e CW_PRIVATE_KEY=<CW_PRIVATE_KEY> -e CW_DB_PASSWORD=<CW_DB_PASSWORD> -- npx -y mcp-connectwise-psaReplace <…> with your own values. 7 more environment variables are in the server README
Platform CLI
codex mcp add connectwise-psa --env CW_SITE=<CW_SITE> --env CW_COMPANY_ID=<CW_COMPANY_ID> --env CW_CLIENT_ID=<CW_CLIENT_ID> --env CW_PUBLIC_KEY=<CW_PUBLIC_KEY> --env CW_PRIVATE_KEY=<CW_PRIVATE_KEY> -- npx -y mcp-connectwise-psaReplace <…> with your own values. 7 more environment variables are in the server README
Config file
{
"mcpServers": {
"connectwise-psa": {
"command": "npx",
"args": [
"-y",
"mcp-connectwise-psa"
],
"env": {
"CW_SITE": "<CW_SITE>",
"CW_COMPANY_ID": "<CW_COMPANY_ID>",
"CW_CLIENT_ID": "<CW_CLIENT_ID>",
"CW_PUBLIC_KEY": "<CW_PUBLIC_KEY>",
"CW_PRIVATE_KEY": "<CW_PRIVATE_KEY>"
}
}
}
}Replace <…> with your own values. 7 more environment variables are in the server README
Config file
{
"servers": {
"connectwise-psa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-connectwise-psa"
],
"env": {
"CW_SITE": "<CW_SITE>",
"CW_COMPANY_ID": "<CW_COMPANY_ID>",
"CW_CLIENT_ID": "<CW_CLIENT_ID>",
"CW_PUBLIC_KEY": "<CW_PUBLIC_KEY>",
"CW_PRIVATE_KEY": "<CW_PRIVATE_KEY>"
}
}
}
}Replace <…> with your own values. 7 more environment variables are in the server README
Platform CLI
gemini mcp add -e CW_SITE=<CW_SITE> -e CW_COMPANY_ID=<CW_COMPANY_ID> -e CW_CLIENT_ID=<CW_CLIENT_ID> -e CW_PUBLIC_KEY=<CW_PUBLIC_KEY> -e CW_PRIVATE_KEY=<CW_PRIVATE_KEY> connectwise-psa npx -y mcp-connectwise-psaReplace <…> with your own values. 7 more environment variables are in the server README
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 ConnectWise PSA
How do I install ConnectWise PSA in Claude Code?
Run `claude mcp add --env CW_SITE=<CW_SITE> --env CW_COMPANY_ID=<CW_COMPANY_ID> --env CW_CLIENT_ID=<CW_CLIENT_ID> --env CW_PUBLIC_KEY=<CW_PUBLIC_KEY> --env CW_PRIVATE_KEY=<CW_PRIVATE_KEY> --transport stdio connectwise-psa -- npx -y mcp-connectwise-psa` replacing the placeholders with your company ID, site URL, and API credentials.
What does this MCP server do?
It interfaces AI coding assistants with ConnectWise Manage, letting agents manage tickets, track billable time, schedule dispatches, and look up client equipment.
How does the server handle user permissions?
It uses member-specific API keys so ConnectWise enforces your organization's exact security profile. Every note, ticket change, and timesheet entry is attributed directly to the authenticated user.