Content
# Halo PSA MCP Server
A Model Context Protocol (MCP) server for integrating with Halo PSA (Professional Services Automation) platform. This server provides AI assistants with the ability to interact with Halo PSA tickets, clients, time entries, and other PSA functionality.
## Features
- **Ticket Management**: Create, read, and update support tickets
- **Client Management**: Retrieve and search client information
- **Time Tracking**: Log time entries and retrieve time reports
- **OAuth2 Authentication**: Secure API access using OAuth2 or API keys
- **Configurable**: Environment-based configuration for different deployments
## Installation
1. Clone this repository
2. Install dependencies:
```bash
npm install
```
3. Build the server:
```bash
npm run build
```
## Configuration
Set the following environment variables:
```bash
# Required: Halo PSA API Configuration
HALO_PSA_API_URL=https://your-tenant.halopsa.com/api
HALO_PSA_CLIENT_ID=your-client-id
HALO_PSA_CLIENT_SECRET=your-client-secret
# Alternative: Use API Key instead of OAuth2
HALO_PSA_API_KEY=your-api-key
# Optional
HALO_PSA_TENANT_ID=your-tenant-id
HALO_PSA_TIMEOUT=30000
```
## Usage
### Running the Server
Start the MCP server:
```bash
npm start
```
For development with auto-reload:
```bash
npm run dev
```
### Available Tools
#### Ticket Management
- **get_tickets**: Retrieve support tickets with filtering options
- **create_ticket**: Create new support tickets
- **update_ticket**: Update existing tickets with status, notes, etc.
#### Client Management
- **get_clients**: Search and retrieve client information
#### Time Tracking
- **get_time_entries**: Retrieve time entries for reporting
- **create_time_entry**: Log time against tickets
### Example Tool Usage
```json
{
"name": "get_tickets",
"arguments": {
"status": "open",
"client_id": "123",
"limit": 10
}
}
```
```json
{
"name": "create_ticket",
"arguments": {
"title": "Email server issue",
"description": "Users unable to send emails",
"client_id": "123",
"priority": "high"
}
}
```
## Authentication
This server supports two authentication methods:
1. **OAuth2 Client Credentials**: Recommended for production
- Set `HALO_PSA_CLIENT_ID` and `HALO_PSA_CLIENT_SECRET`
2. **API Key**: For simpler setups
- Set `HALO_PSA_API_KEY`
## Development
```bash
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build for production
npm run build
# Run tests
npm test
# Lint code
npm run lint
```
## License
MIT License
Connection Info
You Might Also Like
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.
awesome-claude-skills
A curated list of awesome Claude Skills, resources, and tools for...
claude-flow
Claude-Flow v2.7.0 is an enterprise AI orchestration platform.
Appwrite
Build like a team of hundreds
semantic-kernel
Build and deploy intelligent AI agents with Semantic Kernel's orchestration...
Anthropic-Cybersecurity-Skills
734+ structured cybersecurity skills for AI agents · MITRE ATT&CK mapped ·...