Related MCP Server Resources

Explore more AI models, providers, and integration options:

  • Explore AI Models
  • Explore AI Providers
  • Explore MCP Servers
  • LangDB Pricing
  • Documentation
  • AI Industry Blog
  • Powertools MCP Search Server
  • MCP Pokemon Server
  • MCP Server for ArangoDB
  • DaVinci Resolve MCP
  • SMTP MCP Server
Back to MCP Servers
Heimdall

Heimdall

Public
shinzo-labs/heimdall

Lightweight service for managing local Model Context Protocol (MCP) servers, enabling centralized configuration, authorized tool control across multiple MCP clients, and seamless dynamic updates on a single device.

javascript
0 tools
May 29, 2025
Updated Jun 4, 2025

Supercharge Your AI with Heimdall

MCP Server

Unlock the full potential of Heimdall through LangDB's AI Gateway. Get enterprise-grade security, analytics, and seamless integration with zero configuration.

Unified API Access
Complete Tracing
Instant Setup
Get Started Now

Free tier available • No credit card required

Instant Setup
99.9% Uptime
10,000+Monthly Requests

Heimdall

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 

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  

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.

Publicly Shared Threads0

Discover shared experiences

Shared threads will appear here, showcasing real-world applications and insights from the community. Check back soon for updates!

Share your threads to help others
Related MCPs5
  • Powertools MCP Search Server
    Powertools MCP Search Server

    Model Context Protocol server enabling efficient local search of AWS Lambda Powertools documentation...

    2 tools
    Added May 30, 2025
  • MCP Pokemon Server
    MCP Pokemon Server

    An MCP server implementation enabling interaction with the PokeAPI to fetch dynamic Pokémon data and...

    Added May 30, 2025
  • MCP Server for ArangoDB
    MCP Server for ArangoDB

    Model Context Protocol server enabling seamless interaction with ArangoDB through core database oper...

    7 tools
    Added May 30, 2025
  • DaVinci Resolve MCP
    DaVinci Resolve MCP

    Connect AI coding assistants to DaVinci Resolve via Model Context Protocol, enabling natural languag...

    Added May 30, 2025
  • SMTP MCP Server
    SMTP MCP Server

    Model Context Protocol server enabling AI assistants to send and manage emails with multiple SMTP co...

    11 tools
    Added May 30, 2025