Integrations
HaloPSA MCPツール
HaloPSA API と対話するためのモデル コンテキスト プロトコル (MCP) サーバー。
概要
このパッケージは、AIアシスタント(Claudeなど)がHaloPSA APIとやり取りできるようにするモデルコンテキストプロトコル(Model Context Protocol)サーバー実装を提供します。様々な構成で使用できます。
- スタンドアロンサーバーとして
- Claude Desktopと統合
- Node.jsアプリケーションのライブラリとして
特徴
- 複数のトランスポート タイプ (stdio、http、tcp) をサポートする MCP サーバー
- チケット、ユーザー、アセットなどとやり取りするためのツール
- Claude Desktopとのシームレスな統合
- 設定可能なログ記録とエラー処理
- 堅牢なセキュリティチェック
- MCP SDK とのバージョン間の互換性
インストール
NPMグローバルインストール
ローカルインストール
構成
次の環境変数を使用して、プロジェクト ルートに.env
ファイルを作成します。
あるいは、ツールが Claude Desktop 統合として実行されている場合は、Claude Desktop の構成を使用することもできます。
使用法
スタンドアロンサーバーとして使用する
Claude Desktopでの使用
Claude Desktop で使用するには:
- パッケージをグローバルにインストールします。
- Claude Desktop の設定 ([設定] > [拡張機能] > [MCP サーバーの追加]) で、この MCP サーバーを使用するように Claude Desktop を構成します。
- 名前: HaloPSA
- コマンド: haloapi-desktop-mcp
- 環境変数(オプション):
- HALO_API_URL: HaloPSA API URL
- HALO_CLIENT_ID: クライアントID
- HALO_CLIENT_SECRET: クライアントシークレット
- Claude との会話で HaloPSA ツールを使い始めましょう。
あるいは、このリポジトリをクローンした場合は、次のコマンドを実行できます。
MCP サーバーは、Claude Desktop 設定から構成を自動的に検出して使用します。
ライブラリとして使用する
構造
コードベースは次の構造で構成されています。
src/core/
- コアMCPサーバーの実装src/tools/
- HaloPSA API操作のツール定義src/utils/
- ログ記録、検証などのユーティリティ関数。src/services/
- HaloPSA API 操作のサービス層src/api/
- HaloPSA の API クライアントbin/
- 実行可能エントリポイントscripts/
- 開発とメンテナンスのためのユーティリティスクリプト
MCPツール
このパッケージは、HaloPSA と対話するためのいくつかのツールを提供し、Claude Desktop に必要な標準の MCP プロトコル メソッドを実装します。
チケットツール
get-tickets
: オプションのフィルタリングを使用してチケットのリストを取得しますget-ticket
: 特定のチケットの詳細情報を取得するcreate-ticket
: 新しいチケットを作成するupdate-ticket
: 既存のチケットを更新するdelete-ticket
: チケットを削除するget-ticket-comments
: 特定のチケットのコメントを取得するadd-comment
: チケットにコメントを追加する
ユーザーツール
get-users
: オプションのフィルタリングを使用してユーザーのリストを取得します。get-user
: 特定のユーザーに関する詳細情報を取得するcreate-user
: 新しいユーザーを作成するupdate-user
: 既存のユーザーを更新するdelete-user
: ユーザーを削除するget-agents
: エージェントのリストを取得する
資産ツール
get-assets
: オプションのフィルタリングを使用してアセットのリストを取得しますget-asset
: 特定の資産に関する詳細情報を取得するcreate-asset
: 新しいアセットを作成するupdate-asset
: 既存のアセットを更新するdelete-asset
: アセットを削除するget-asset-types
: すべての資産タイプのリストを取得する
標準MCP法
resources/list
: MCP サーバーで利用可能なすべてのリソースを一覧表示しますprompts/list
: Claude Desktop 統合で利用可能なすべてのプロンプトを一覧表示しますtools/list
: MCP サーバーで利用可能なすべてのツールを一覧表示します
クロードデスクトップ統合
このパッケージには、さまざまな MCP SDK バージョンで動作する Claude Desktop 統合の統合実装が含まれています。
統合実装の主な機能:
- SDK 互換性レイヤーによるバージョン間の互換性
- Claudeデスクトップ設定からの自動構成検出
- 堅牢なエラー処理とフォールバックメカニズム
- 包括的なログ記録とデバッグのサポート
トラブルシューティング
よくある問題
モジュールのインポート
インポートまたはモジュール システムに関連するエラーが発生した場合:
解決策: プロジェクト設定に正しいインポート構文を使用していることを確認してください。このパッケージは主にCommonJSを使用しているため、 require()
ステートメントを使用してください。
認証エラー
HaloPSA 認証に関連するエラーが表示された場合:
解決策: 環境変数または構成でクライアント ID とクライアント シークレットを確認します。
輸送問題
特定のトランスポート タイプでサーバーが起動に失敗した場合:
解決策: サポートされているトランスポート タイプ (「stdio」、「http」、または「tcp」) のいずれかを使用していることを確認します。
クロードデスクトップ統合の問題
Claude Desktop が MCP サーバーに接続できない場合、またはサポートされていない方法に関するエラーが表示される場合は、次の手順に従ってください。
解決策: MCP プロトコルの堅牢なサポートを備えた統合 MCP 実装を含むこのパッケージの最新バージョンを使用していることを確認してください。
JSON解析エラー
MCP サーバー ログに次のような JSON 解析エラーが表示される場合:
解決策:最新バージョンでは、JSON処理が強化され、不正なメッセージに関する一般的な問題が自動的に修正されます。それでも問題が解決しない場合は、デバッグモードを有効にして詳細を確認してください。
デバッグ
詳細なデバッグ情報を有効にするには、DEBUG 環境変数を設定します。
さらに詳細な情報を得るために、ログ レベルを上げることもできます。
Claude Desktop 統合の場合、ログは次の場所にあります。
- macOS:
~/Library/Logs/Claude/mcp-server-halopsa.log
- Windows:
%APPDATA%\Claude\Logs\mcp-server-halopsa.log
- Linux:
~/.local/share/claude/logs/mcp-server-halopsa.log
テスト
付属のテスト スクリプトを使用して MCP サーバーをテストできます。
対話型テスト スクリプトを使用すると、個々のツールをテストしてその応答を検査できるため、デバッグや開発に役立ちます。
開発と普及
コードベースは、新しい機能を追加したり変更を加えたりするときに従う必要があるいくつかの設計パターンとプラクティスに従います。
デザインパターン
- 互換性レイヤー パターン:
src/sdk-compat.js
で使用され、異なる SDK バージョン間で一貫したインターフェースを提供します。 - 依存性注入: コードベース全体で使用され、モジュールに依存性を提供することで、テストが容易になり、モジュール化が促進されます。
- モジュール パターン: 各コンポーネントは、明確な責任とインターフェースを持つモジュールに編成されます。
- ファサード パターン: メイン エントリ ポイント (
desktop-mcp-unified.js
、standalone-mcp.js
) は、基盤となる機能への簡略化されたインターフェイスを提供します。
新機能の追加
コードベースに新しい機能を追加する場合は、次の手順に従います。
src/tools/
内の適切なモジュールに新しいツール定義を追加します。- 新しいツールを
src/tools/index.js
に登録します。 - 新しいユーティリティ関数を
src/utils/
内の適切なモジュールに追加します。 - 新しい機能のテストを
tests/
ディレクトリに記述します。 - 新しい機能を反映するようにドキュメントを更新する
ライセンス
MITライセンス Copyright (c) 2025 sulemanji.com MCPチーム
寄稿者
- スーレイマン・マンジ( @ssmanji89 )
This server cannot be installed
HaloPSA API と対話するためのモデル コンテキスト プロトコル サーバー。これにより、Claude などの AI アシスタントが自然言語を通じて HaloPSA 内のチケット、ユーザー、および資産を管理できるようになります。