服务器管理工具

Steerholm(原名MCP Harbour)是一个服务器管理工具,允许用户从单一位置控制代理对工具的访问权限。

  • by steerholm
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 GPARS-org/mcp-harbour

使用说明

[!IMPORTANT] MCP Harbour is now Steerholm. This repository is archived and no longer maintained — development continues at steerholm/steerholm · steerholm.ai. Existing MCP Harbour installs stay on the final v0.1.3 release here and will not auto-update.

Dock your servers once, control which agents can access which tools, and manage everything from a single place.

Built as an implementation of the GPARS plane boundary.


Install

Linux / macOS:

curl -fsSL https://mcpharbour.ai/install.sh | bash

Windows (PowerShell):

irm https://mcpharbour.ai/install.ps1 | iex

This downloads the binary, registers a per-user background daemon that runs as you, and starts it. No admin rights, no Python or package manager required.

Or download binaries directly from GitHub Releases.

Quick Start

# 1. Dock an MCP server
harbour dock --name filesystem \
  --command "npx -y @modelcontextprotocol/server-filesystem /home/user/projects"

# 2. Create an identity
harbour identity create my-agent

# 3. Grant permissions
harbour permit allow my-agent filesystem --tool "*" --args "path=/home/user/projects/**"

Then configure your MCP client (Claude Code, VS Code, Cursor, OpenCode):

{
  "mcpServers": {
    "harbour": {
      "url": "http://127.0.0.1:4767/mcp",
      "headers": {
        "Authorization": "Bearer harbour_sk_..."
      }
    }
  }
}

How It Works

Agent → Streamable HTTP /mcp → Harbour Daemon → MCP Servers
              │                       │
          Bearer auth          identity verification
                               policy enforcement
                               AUTHORIZATION_DENIED / SERVER_UNAVAILABLE
  • Default deny — no policy means no access
  • Identity from token — agents cannot self-assert their identity
  • Per-agent policies — whitelist of servers, tools, and argument constraints
  • Isolation by policy — one shared daemon; each agent is confined by its policy, not by separate server processes
  • GPARS error codes — AUTHORIZATION_DENIED (-31001) and SERVER_UNAVAILABLE (-31002)

Documentation

Read the full docs at docs.mcpharbour.ai

Contributing

See CONTRIBUTING.md for development setup and guidelines.

Author

Ismael Kaissy

License

This project is licensed under the MIT License.