Files
sherlock/docs/configuration.md
T
Alexandru Macocian f6e8186b46
Release / release (push) Successful in 26s
Support for custom browser
2026-06-15 17:19:22 +02:00

1.4 KiB

Configuration

Sherlock reads deployment values from one TOML file. Missing files, sections, or required fields are hard errors.

Default source: config.example.toml.

Setup and update compare an existing config against the shipped example. Missing provider/service sections are appended as marked templates; existing sections and values are not rewritten.

Location

Resolved in order:

  1. $SHERLOCK_CONFIG
  2. $XDG_CONFIG_HOME/sherlock/config.toml
  3. $HOME/.config/sherlock/config.toml

Shape

[oauth] is optional. Set browser = "<executable>" to open OAuth login URLs with a specific browser, for example browser = "firefox". Leave it unset to use the OS default browser.

[providers.<name>] defines a reusable OAuth/OIDC identity: issuer, client_id, optional client_secret.

[services.<name>] defines one MCP target. The service name is also the wallet key used by sherlock status and sherlock logout <name>. Each service requires base_url plus either:

  • provider = "<name>", resolved from [providers.<name>], or
  • inline issuer, client_id, and optional client_secret.

Mixing provider with inline identity fields is rejected.

Not configured here

Tokens live in the OS keyring. OAuth scopes live in MCP code. Agent profiles and the built-in MCP registry live in Go code.

To add a service, add its config entry and wire or install the matching MCP binary.