Heimdall

by shinzo-labs
Verified

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides access to the source code repository for local installation and contribution to the project.

  • Allows installation via npm package manager using npx command, providing a streamlined setup process for the MCP server.

  • Supports local installation and build processes using pnpm package manager for developers working with the source code directly.

ヘイムダル

Heimdallは、ローカルMCPサーバーを管理するための軽量サービスで、 npxコマンド1つでインストールできます。MCPクライアントに対して特定のMCPサーバーツールを承認すると、デバイス上のすべてのMCPクライアントが同じ設定にアクセスできるようになります。

インストール

⚠️ 注意: 予期しない資格情報の損失を防ぐために、インストール前に MCP サーバー構成をバックアップすることを強くお勧めします。

セットアップ スクリプトは、いくつかの重要なアクションを実行します。

  • 指定したパスからmcpServers構成 JSON を~/.heimdall/config.jsonに移動します。
  • 以前のmcpServers構成パスの代わりに、 heimdallの単一の構成を挿入します。
  • ~/.heimdall/controls.jsonのコントロールを初期化して、現在のすべてのサーバー上のすべてのメソッドを承認します。

特定のサーバーに対して承認されたツールを制限するために~/.heimdall/controls.json変更する手順と、新しいサーバーを~/.heimdall/config.jsonに追加する手順については、 「構成」を参照してください。

NPX経由(推奨)

  1. セットアップ スクリプトを実行します (パスが指定されていない場合は空の構成を生成します)。
npx @shinzolabs/heimdall setup <optional: path/to/current/config.json>

ローカルインスタンス経由

  1. パッケージをダウンロードします:
git clone https://github.com/shinzo-labs/heimdall.git
  1. 依存関係をインストールしてビルドします。
cd heimdall && pnpm i && pnpm build
  1. セットアップ スクリプトを実行します (パスが指定されていない場合は空の構成を生成します)。
pnpm run setup <optional: path/to/current/config.json> <optional: path to `index.js` file in local Heimdall instance, ex. `/path/to/local/heimdall/dist/index.js`>

構成

サーバーリストの編集

利用可能なサーバーを追加または更新するには、通常のmcpServers設定JSONと同様に、 ~/.heimdall/config.jsonの設定を更新するだけです。サーバーと承認済みツールを~/.heimdall/controls.jsonに追加しない限り、Heimdall経由で新しいサーバーのツールは表示されませんのでご注意ください。

承認済みツールの編集

新規または既存のサーバーに承認済みツールを追加するには、必要に応じて~/.heimdall/controls.jsonに追加してください。数秒後にHeimdallの内部設定が更新されます。MCPクライアントがツールリストの動的キャッシュをサポートしている場合は、承認済みツールが自動的に更新されます。その他のクライアント(Claude Desktopなど)では、新しいツールを反映するために再起動が必要になる場合があります。

これは~/.heimdall/controls.jsonのスキーマです:

{ "authorizedMcpServers": { "server1": { "authorizedTools": [ "tool1", "tool2", ... ] }, "server2": { "authorizedTools": [ "tool1", "tool2", ... ] }

複数のMCPクライアント

デバイス上で複数の MCP クライアントを実行している場合は、新しいクライアントごとに次のconfig.jsonを設定して、すべてのクライアントで同じ承認済みツールを有効にすることができます (Heimdall がデバイス上ですでに設定されていると仮定)。

{ "mcpServers": { "heimdall": { "command": "npx", "args": [ "@shinzolabs/heimdall" ] } } }

トラブルシューティング

利用可能なツール

一部のMCPクライアントでは、エージェントが同時に利用できるツールの数に制限があります。例えば、Cursorは全サーバーを合わせて最大40個のツールしかサポートしないため、 controls.json内のauthorizedToolsの合計はこの数を超えることはできません。

ログ記録

実行中のインスタンスのログは、 ~/.heimdall/logsに保存されます。各 MCP クライアントの Heimdall インスタンスと子サーバーのログは、ランダムな UUID で識別される別々のディレクトリに保存されます。

孤立した子プロセス

MCPクライアントが予期せずシャットダウンした場合、または終了前にHeimdallに正しいSIGTERMシグナルを送信できなかった場合、その後もデバイス上で孤立したnodeプロセス(およびnpm )が実行中のままになっている可能性があります。当面は、これらのノードプロセスを手動で強制停止する必要があります。デバイス上で他に重要なnodeプロセスが実行されていない場合は、以下のコマンドを事後クリーンアップとして使用できます。

pkill -aif node

貢献

皆様からの貢献を歓迎いたします。ご質問、ご意見、ご不明な点がございましたら、 austin@shinzolabs.comまでお問い合わせください。

-
security - not tested
A
license - permissive license
-
quality - not tested

Heimdallは、ローカルMCPサーバーを管理するための軽量サービスで、npxコマンド1つでインストールできます。MCPクライアントに対して特定のMCPサーバーツールを承認すると、デバイス上のすべてのMCPクライアントが同じ設定にアクセスできるようになります。

  1. Installation
    1. Via NPX (Recommended)
    2. Via Local Instance
  2. Configuration
    1. Edit Server List
    2. Edit Authorized Tools
    3. Multiple MCP Clients
  3. Troubleshooting
    1. Available Tools
    2. Logging
    3. Orphaned Child Processes
  4. Contributing
    ID: eghusewy6q