ConnectWise Manage MCP Server
About
A Model Context Protocol (MCP) server for ConnectWise Manage API integration
Details
- Author
- jasondsmith72
- Downloads
- 346
- Categories
- Other
Jump to
- Fetches, creates, and updates service tickets
- Lists companies and retrieves company details
- Lists contacts associated with companies
- Queries configurations in ConnectWise Manage
- Gets and creates time entries
- Lists projects and sales opportunities
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
ConnectWise Manage MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Clone the repository, install dependencies with npm install, build with npm run build, set up API credentials via .env or npx mcp-connectwise-manage setup, then run npx mcp-connectwise-manage install and restart Claude Desktop. After installation, you can ask Claude to fetch tickets, create records, or update entries in ConnectWise Manage using natural language.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"connectwise manage mcp server": {
"mcp-connectwise-manage": {
"command": "npx",
"args": [
"mcp-connectwise-manage",
"setup"
]
}
}
}
}
McpServers
{
"mcp-connectwise-manage": {
"command": "npx",
"args": [
"mcp-connectwise-manage",
"setup"
]
}
}
ConnectWise Manage MCP Server
A Model Context Protocol (MCP) server that allows Claude to interact with the ConnectWise Manage API. This enables Claude to perform various operations in ConnectWise Manage such as fetching tickets, updating records, querying configurations, and more.
Overview
This project creates an integration between Claude and ConnectWise Manage, allowing for natural language interactions with your PSA system. By leveraging the MCP architecture, Claude can seamlessly access and update information in ConnectWise Manage.
Installation
Prerequisites
- Node.js 18.x or higher
- ConnectWise Manage API credentials
- Company ID
- Public Key
- Private Key
- Client ID
Setup Instructions
1. Clone the repository:
git clone https://github.com/jasondsmith72/mcp-connectwise-manage.git
cd mcp-connectwise-manage
2. Install dependencies:
npm install
3. Build the project:
npm run build
4. Set up ConnectWise Manage API credentials:
Option 1: Create a .env file with the following values (see .env.example for a template):
CW_COMPANY_ID=your_company_id
CW_PUBLIC_KEY=your_public_key
CW_PRIVATE_KEY=your_private_key
CW_CLIENT_ID=your_client_id
CW_SERVER=https://your-instance.connectwise.com
Option 2: Run the setup command and follow the prompts:
npx mcp-connectwise-manage setup
5. Install the MCP server in Claude Desktop:
npx mcp-connectwise-manage install
6. Restart Claude Desktop to activate the server.
Usage Examples
Once the server is installed and Claude is restarted, you can use the following prompts to interact with ConnectWise Manage:
Fetch Service Tickets
Can you get all my open service tickets from ConnectWise Manage?
Create a New Ticket
Create a new service ticket in ConnectWise Manage with the following details:
Summary: Network switch down
Company: Acme Corp (ID: 123)
Board: Network Issues (ID: 45)
Impact: High
Update a Ticket
Please update ticket 12345 in ConnectWise Manage to change the status to "Waiting Customer" and add a note saying "Waiting for customer to confirm the fix worked."
Check the examples directory for more detailed examples:
- example-queries.md: Contains a comprehensive list of query examples for Claude
- ticket-example.js: Demonstrates direct API usage for ticket operations
Available Endpoints
The ConnectWise Manage MCP Server provides access to the following ConnectWise Manage API endpoints:
- Service Tickets: Get, create, and update tickets
- Companies: List companies and get company details
- Contacts: List company contacts
- Configurations: Query configurations
- Time Entries: Get and create time entries
- Projects: List projects
- Opportunities: List sales opportunities
Direct API Usage
If you want to use the ConnectWise Manage API functions directly in your code (outside of Claude), you can import the functions from the built package:
import { makeConnectWiseRequest } from 'mcp-connectwise-manage';
// Example: Get open tickets
const response = await makeConnectWiseRequest('getServiceTickets', {
conditions: 'status/id=1',
pageSize: 10
});
console.log(response.data);
See the examples directory for more detailed code samples.
Future Enhancements
1. Add support for Attachments
2. Implement caching for frequently accessed data
3. Add support for batch operations
4. Create a configuration utility for managing credentials
5. Add support for webhooks to listen for ConnectWise events
Troubleshooting
If you encounter issues:
1. Check your ConnectWise API credentials
2. Verify the log file at logs/connectwise.log for detailed request/response data
3. Ensure your ConnectWise instance is accessible and your API keys have appropriate permissions
4. Restart Claude Desktop after installing or updating the MCP server
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



