Cover image
Try Now
2025-04-02

Control the tools your MCP-enabled agents can access with minimal overhead.

3 years

Works with Finder

1

Github Watches

1

Github Forks

3

Github Stars

Heimdall

npm version smithery badge

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

Installation

⚠️ NOTE: We strongly recommend backing up your MCP server config before installation to protect against unexpected loss of credentials.

The setup script performs a few key actions:

  • Moves the mcpServers config JSON from the path you specify to ~/.heimdall/config.json
  • Inserts a single config for heimdall in place of the previous mcpServers config path
  • Initializes the controls at ~/.heimdall/controls.json to authorize all methods on all current servers

See Configuration for steps to modify ~/.heimdall/controls.json to limit the authorized tools for a given server, and add new servers to ~/.heimdall/config.json.

Via NPX (Recommended)

  1. Run setup script (generates an empty config if no path is given):
npx @shinzolabs/heimdall setup <optional: path/to/current/config.json>

Via Local Instance

  1. Download the package:
git clone https://github.com/shinzo-labs/heimdall.git
  1. Install and build dependencies:
cd heimdall && pnpm i && pnpm build
  1. Run setup script (generates an empty config if no path is given):
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`>

Configuration

Edit Server List

To add or update available servers, simply update the configuration at ~/.heimdall/config.json as your regular mcpServers config JSON. Note that you will not see tools for new servers through Heimdall unless you also add the server and authorized tools to ~/.heimdall/controls.json.

Edit Authorized Tools

To add authorized tools to a new or existing server, add them as needed to ~/.heimdall/controls.json and Heimdall will update its internal config after a few seconds. If your MCP client supports dynamic tool list caching, you should see it update the authorized tools automatically. Other clients (ex. Claude Desktop) may require a restart to see the new tools.

This is the schema for ~/.heimdall/controls.json:

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

Multiple MCP Clients

If you run multiple MCP clients on your device, you can set the following config.json for each new client to enable the same authorized tools across all of them (assuming Heimdall has already been set up on the device):

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

Troubleshooting

Available Tools

Some MCP Clients have limits on the number of tools available to agents at a given time. For example, Cursor only supports up to 40 tools across all servers, so the sum of authorizedTools in controls.json cannot exceed this number.

Logging

For logs on running instances, go to ~/.heimdall/logs. Logs for each MCP client's instance of Heimdall and child servers are stored in separate directories identified by random UUIDs.

Orphaned Child Processes

If your MCP client shut downs unexpectedly or fails to send the correct SIGTERM signal to Heimdall before closing, there may be orphaned node (and npm) processes still running on your device afterward. For the time being these must be force stopped manually. If there are no other sensitive node processes running on your device, you can use this command as post-cleanup:

pkill -aif node

Contributing

Contributions are welcomed and encouraged. Contact austin@shinzolabs.com with any questions, comments or concerns.

相关推荐

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • https://zenepic.net
  • Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.

  • https://reddgr.com
  • Delivers concise Python code and interprets non-English comments

  • 林乔安妮
  • A fashion stylist GPT offering outfit suggestions for various scenarios.

  • apappascs
  • Discover the most comprehensive and up-to-date collection of MCP servers in the market. This repository serves as a centralized hub, offering an extensive catalog of open-source and proprietary MCP servers, complete with features, documentation links, and contributors.

  • ShrimpingIt
  • Micropython I2C-based manipulation of the MCP series GPIO expander, derived from Adafruit_MCP230xx

  • pontusab
  • The Cursor & Windsurf community, find rules and MCPs

  • av
  • Effortlessly run LLM backends, APIs, frontends, and services with one command.

  • GeyserMC
  • A library for communication with a Minecraft client/server.

  • Mintplex-Labs
  • The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.

  • awslabs
  • AWS MCP Servers — specialized MCP servers that bring AWS best practices directly to your development workflow

  • 1Panel-dev
  • 🔥 1Panel provides an intuitive web interface and MCP Server to manage websites, files, containers, databases, and LLMs on a Linux server.

    Reviews

    4 (1)
    Avatar
    user_I2NjW5W1
    2025-04-18

    I recently started using Heimdall by shinzo-labs, and it has significantly improved my workflow. The tool is user-friendly and integrates seamlessly with my existing setup. The detailed documentation and intuitive interface make it easy to navigate and utilize its powerful features. Highly recommend checking it out on GitHub for anyone looking to enhance their application management!