WA

wyre-ai/halopsa-mcp

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

3 stars 7 forks Качество 81 Тренд 30Apache-2.0

MCP server for HaloPSA — tickets, clients, assets, contracts, and reporting tools for AI assistants

Обзор

A Model Context Protocol (MCP) server for interacting with HaloPSA, featuring a decision tree architecture for efficient tool loading. this server depends on @wyre-technology/node-halopsa, which is hosted on the npm registry. GitHub Packages has no anonymous access — even though the package is public, every npm install needs a token. The cloud builder runs npm install for you, so you must give it one, or the build fails with npm error 401 Unauthorized ... npm.pkg.github.com. 1. Create a GitHub with the read:packages scope (classic token). Any GitHub account works — you do need to be a member of the wyre-technology org to read its public packages. 2. Add it as a build variable when prompted by the deploy flow: - → set a build variable named to your PAT (Workers → Settings → Build → Variables and Secrets). - → set an encrypted env var named with scope to your PAT (the .do/app.yaml already declares it).

README

Показан фрагмент оригинального README. Открыть оригинал.

HaloPSA MCP Server

A Model Context Protocol (MCP) server for interacting with HaloPSA, featuring a decision tree architecture for efficient tool loading.

One-Click Deployment

[!IMPORTANT] Before you click: this server depends on @wyre-technology/node-halopsa, which is hosted on the GitHub Packages npm registry. GitHub Packages has no anonymous access — even though the package is public, every npm install needs a token. The cloud builder runs npm install for you, so you must give it one, or the build fails with npm error 401 Unauthorized ... npm.pkg.github.com.

  1. Create a GitHub Personal Access Token with the read:packages scope (classic token). Any GitHub account works — you do not need to be a member of the wyre-technology org to read its public packages.
  2. Add it as a build variable when prompted by the deploy flow:
    • Cloudflare Workers → set a build variable named NODE_AUTH_TOKEN to your PAT (Workers → Settings → Build → Variables and Secrets).
    • DigitalOcean App Platform → set an encrypted env var named GITHUB_TOKEN with scope Build Time to your PAT (the .do/app.yaml already declares it).

[!NOTE] The DigitalOcean target builds the full Docker image and runs the complete MCP server over HTTP — this is the recommended path for operators. The Cloudflare Workers target is currently a thin entrypoint (the /mcp route returns 501 until the Workers transport adapter lands) and is best suited to gateway-style deployments; for a full self-hosted server prefer DigitalOcean or the prebuilt container image (ghcr.io/wyre-ai/halopsa-mcp).

Architecture

This MCP server uses a hierarchical tool loading approach instead of exposing all tools upfront:

  1. Navigation Phase: Initially exposes only a navigation tool (halopsa_navigate)
  2. Domain Selection: User selects a domain (tickets, clients, assets, agents, invoices, categories)
  3. Domain Tools: Server exposes domain-specific tools after selection
  4. Lazy Loading: Domain handlers and the HaloPSA client are loaded on-demand

This architecture provides:

  • Reduced cognitive load (fewer tools to choose from)
  • Faster initial load times
  • Better organization of related operations
  • Clear navigation state

Interactive Ticket Card (MCP Apps)

halopsa_tickets_get renders as an interactive card in MCP Apps hosts (Claude Desktop/web) with an in-card “Add note” round-trip via

Открыть полный README на GitHub

Установка

npx @wyre-ai/halopsa-mcp
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

{ "mcpServers": { "halopsa": { "command": "npx", "args": ["@wyre-ai/halopsa-mcp"], "env": { "HALOPSA_CLIENT_ID": "your-client-id", "HALOPSA_CLIENT_SECRET": "your-client-secret", "HALOPSA_TENANT": "yourcompany" } } } }