
HaloPSA
io.github.wyre-technology由 GitHub 帳號 wyre-technology 發布v1.7.11更新於 Oct 24, 2026
MCP server for HaloPSA — clients, tickets, and PSA workflows via the HaloPSA REST API.
概覽
針對 HaloPSA 的本機 MCP 伺服器,讓助理透過 HaloPSA REST API 瀏覽與管理工單、客戶、資產、技術人員和發票。
- 可以做什麼
- 在 HaloPSA 各領域(工單、客戶、資產、技術人員、發票、分類)之間切換導覽,並查看目前狀態與憑證狀態,工具依領域按需載入。列出、檢視、建立和更新支援工單,並為工單新增備註或處理記錄。分頁或依 ID 查詢工單分類,方便在分流時指定分類層級。列出、檢視、建立和搜尋客戶,以及列出、檢視和搜尋資產與資產類型。列出技術人員、團隊和發票,並檢視發票明細。
- 適用情境
- 適合讓助理直接在 HaloPSA 服務台內工作:分流與更新工單、新增備註、查詢客戶及其資產,或查看帳務與團隊資訊,而不必切換到 HaloPSA 網頁介面。
- 執行需求
- 以本機程序方式執行(npx 套件或容器映像),使用 stdio 傳輸。需要 HaloPSA OAuth 憑證 HALOPSA_CLIENT_ID 與 HALOPSA_CLIENT_SECRET,以及 HALOPSA_TENANT 或 HALOPSA_BASE_URL 其中之一。安裝 npm 套件需要具備 read:packages 權限的 GitHub 權杖,透過 NODE_AUTH_TOKEN 提供。需要能連線至 HaloPSA 執行個體的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 HaloPSA,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
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, everynpm installneeds a token. The cloud builder runsnpm installfor you, so you must give it one, or the build fails withnpm error 401 Unauthorized ... npm.pkg.github.com.
- Create a GitHub Personal Access Token with the
read:packagesscope (classic token). Any GitHub account works — you do not need to be a member of thewyre-technologyorg to read its public packages.- Add it as a build variable when prompted by the deploy flow:
- Cloudflare Workers → set a build variable named
NODE_AUTH_TOKENto your PAT (Workers → Settings → Build → Variables and Secrets).- DigitalOcean App Platform → set an encrypted env var named
GITHUB_TOKENwith scope Build Time to your PAT (the.do/app.yamlalready declares it).
[Deploy to Cloudflare Workers]
[!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
/mcproute 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:
- Navigation Phase: Initially exposes only a navigation tool (
halopsa_navigate) - Domain Selection: User selects a domain (tickets, clients, assets, agents, invoices, categories)
- Domain Tools: Server exposes domain-specific tools after selection
- 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
halopsa_tickets_add_action; plain-JSON behavior is unchanged in other hosts.
The card is neutral by default and brandable via window.__BRAND__ injection
or MCP_BRAND_* env vars (MCP_BRAND_NAME, MCP_BRAND_LOGO_URL,
MCP_BRAND_PRIMARY_COLOR, MCP_BRAND_ACCENT_COLOR, MCP_BRAND_BG,
MCP_BRAND_TEXT) — no rebuild needed.
Installation
This package is published to the GitHub Packages npm registry, which requires a token even for public packages. Authenticate once, then install:
The repo's .npmrc already points the @wyre-technology scope at GitHub Packages and
reads the token from NODE_AUTH_TOKEN, so no further config is needed.
Configuration
Set the following environment variables:
Usage
Running Standalone
Claude Desktop Configuration
Add to your Claude Desktop claude_desktop_config.json:
Docker
Available Domains
Tickets
Manage support tickets, create new tickets, update status, add actions/notes.
Tools:
halopsa_tickets_list- List tickets with filters (category_1only;category_2–category_4are rejected)halopsa_tickets_get- Get ticket detailshalopsa_tickets_create- Create a new ticket (optionalcategory_1–category_4)halopsa_tickets_update- Update an existing ticket (optionalcategory_1–category_4)halopsa_tickets_add_action- Add a note/action to a ticket
Categories
Look up Halo ticket categories so triage can assign category_1–category_4 (the category name, matched to its level).
Tools:
halopsa_categories_list- List one page of ticket categories (limitdefaults to 50;page_nostarts at 1)halopsa_categories_get- Get a category by ID
Clients
Manage companies/clients in HaloPSA.
Tools:
halopsa_clients_list- List clientshalopsa_clients_get- Get client detailshalopsa_clients_create- Create a new clienthalopsa_clients_search- Search clients by name
Assets
Manage configuration items/assets.
Tools:
halopsa_assets_list- List assets with filtershalopsa_assets_get- Get asset detailshalopsa_assets_search- Search assetshalopsa_assets_list_types- List available asset types
Agents
View technicians and teams.
Tools:
halopsa_agents_list- List agents/technicianshalopsa_agents_get- Get agent detailshalopsa_teams_list- List teams
Invoices
View billing and invoices.
Tools:
halopsa_invoices_list- List invoices with filtershalopsa_invoices_get- Get invoice details
Navigation Tools
Always available:
halopsa_navigate- Select a domain to work withhalopsa_status- Show current state and credential statushalopsa_back- Return to main menu (when in a domain)
Example Workflow
Rate Limiting
HaloPSA has a rate limit of 500 requests per 3-minute window. The underlying @asachs01/node-halopsa client handles this automatically with request throttling.
License
Apache-2.0
來源:README.md,提交 9a99f35
工具
0版本歷史
1- v1.7.11最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分