Skip to main content
Harbor stores its configuration at ~/.harbor/config.toml. You can edit this file directly or manage everything through the desktop app and CLI.

File Location

~/.harbor/config.toml

Structure

Harbor Settings

[harbor]
gateway_port = 3100  # HTTP/SSE gateway port

Servers

Each server is defined under [servers.<name>]:
[servers.github]
source = "npm:@mcp/server-github"  # Where the server came from (optional)
command = "npx"                      # Executable to run
args = ["-y", "@modelcontextprotocol/server-github"]  # Command arguments
enabled = true                       # Whether the server is active
auto_start = false                   # Start automatically with Harbor

[servers.github.env]
GITHUB_TOKEN = "vault:GITHUB_TOKEN"  # Environment variables

[servers.github.hosts]
claude = true    # Per-host enable/disable overrides
codex = true
vscode = false

Server Fields

FieldTypeDefaultDescription
sourcestringHow the server was sourced (e.g., npm:@mcp/server-github)
commandstringrequiredExecutable to run
argsstring[][]Arguments passed to the command
envmap{}Environment variables (supports vault:KEY references)
enabledbooltrueWhether the server is globally enabled
auto_startboolfalseStart this server automatically when Harbor launches
hostsmap{}Per-host enable/disable overrides

Hosts

Each host is defined under [hosts.<name>]:
[hosts.claude]
connected = true    # Whether this host is active

[hosts.vscode]
connected = true
scope = "user"      # Scope for hosts that support it

Host Fields

FieldTypeDefaultDescription
connectedboolfalseWhether Harbor syncs to this host
scopestringScope level (e.g., user or project)

Full Example

[harbor]
gateway_port = 3100

[servers.memory]
command = "npx"
args = ["-y", "@modelcontextprotocol/server-memory"]
enabled = true
auto_start = false

[servers.github]
source = "npm:@mcp/server-github"
command = "npx"
args = ["-y", "@modelcontextprotocol/server-github"]
enabled = true
auto_start = false

[servers.github.env]
GITHUB_TOKEN = "vault:GITHUB_TOKEN"

[servers.github.hosts]
claude = true
codex = true
vscode = true
cursor = false

[hosts.claude]
connected = true

[hosts.codex]
connected = true

[hosts.vscode]
connected = true

[hosts.cursor]
connected = false