Install pgmcp in Goose

What you need first

  • Goose, installed.
  • Docker, which gives the docker command the server starts with.
  • Your own value for YOUR_PGMCP_DATABASE_URL.

Steps

  1. Open ~/.config/goose/config.yaml. On Windows it is %APPDATA%\Block\goose\config\config.yaml.
  2. Add this entry. If the file already has extensions, add only the entry inside it.
extensions:
  "pgmcp":
    type: stdio
    name: "pgmcp"
    enabled: true
    cmd: "docker"
    args: ["run", "-i", "--rm", "-e", "PGMCP_DATABASE_URL", "ghcr.io/pascalallen/pgmcp:1.1.0"]
    env_keys: []
    envs: { "PGMCP_DATABASE_URL": "YOUR_PGMCP_DATABASE_URL" }
    timeout: 300
  1. Replace YOUR_PGMCP_DATABASE_URL with your own value.
  2. Save the file and start a new Goose session.

Check it worked

Ask Goose: List the tools of pgmcp.

If it does not start

Cannot connect to the Docker daemon
Docker is not running. Start it, then restart Goose.
The server starts, but its tools fail
A YOUR_… placeholder is still in the config, or its value is wrong.
Nothing changes after a restart
The file is not valid YAML any more. Check that the entry is indented like the lines around it.

Back to pgmcp