Heimdall logo

Heimdall

by shinzo-labs

Heimdall is a lightweight service to manage local MCP Servers and can be installed with a single `npx` command. It allows you to authorize specific MCP server tools for your MCP clients, and the same config is accessible to all MCP clients on your device.

View on GitHub

Last updated: N/A

What is Heimdall?

Heimdall is a service that manages local Model Context Protocol (MCP) servers. It provides a centralized configuration and authorization system for MCP tools, ensuring consistency across multiple MCP clients on a single device.

How to use Heimdall?

Heimdall can be installed via NPX or by cloning the repository and building it locally. After installation, you configure the server list in ~/.heimdall/config.json and authorized tools for each server in ~/.heimdall/controls.json. MCP clients can then be configured to use Heimdall as their MCP server.

Key features of Heimdall

  • Centralized MCP server management

  • Tool authorization control

  • Consistent configuration across multiple clients

  • Easy installation with NPX

  • Dynamic tool list updates

Use cases of Heimdall

  • Managing multiple MCP servers on a single development machine

  • Controlling access to specific tools for different MCP clients

  • Ensuring consistent tool configurations across a team of developers

  • Simplifying the setup and configuration of MCP environments

FAQ from Heimdall

How do I add a new server to Heimdall?

Update the ~/.heimdall/config.json file with the new server's configuration, similar to a regular mcpServers config JSON. Then, add the server and authorized tools to ~/.heimdall/controls.json.

How do I authorize a tool for a specific server?

Edit the ~/.heimdall/controls.json file and add the tool to the authorizedTools array for the corresponding server.

How do I use Heimdall with multiple MCP clients?

Configure each client to use Heimdall as its MCP server by setting the mcpServers config to point to Heimdall's npx command.

What do I do if I see orphaned node processes after Heimdall crashes?

Manually force stop the orphaned processes using pkill -aif node if there are no other sensitive node processes running.

Where can I find the logs for Heimdall?

Logs are stored in ~/.heimdall/logs, with separate directories for each MCP client's instance of Heimdall and child servers.