IR
irwinrodriguez.dev
Back to docs

Quick Start

Before this you need the client installed on your machine (Installation) and the agent on the other one (Server kit).

1. Start the agent on the other machine

Double-click the right .bat from the kit. The agent prints a line like this one and has already copied it to the clipboard:

The golem_connect line the agent prints
golem_connect https://192.168.1.40:8797 nSbK7q…  A1B2C3…

If your customer is the one starting it, all they have to do is paste it into an email or a message, just as they send you an AnyDesk ID today.

2. Paste the line into the chat

Open Claude (if it was open, restart it, so it reads the new configuration) and paste that line into the chat. Whole, exactly as it is.

3. Call the agent

That is it. And from here on it depends on which Claude you are using, because not all of them refresh the tool list after connecting:

WhereWhat happensHow you call the agent
Claude DesktopRefreshes the catalog: the tools show up with the vps__ prefixDirectly: vps__run_powershell, vps__screenshot…
Claude CodeDoes not refresh the catalog: those tools are not going to show upWith golem_call, which is the normal path here and not a workaround

In Claude Code, golem_tools tells you what the agent has (with their schemas) and golem_call calls it by its remote name, with no prefix:

Calling an agent tool with golem_call
golem_call  tool = "run_powershell"
            arguments = { "script": "Get-Service W3SVC" }

It returns exactly the same as the direct call, images included. To disconnect, golem_disconnect. To see what is connected, golem_status, which never returns any token.

Worth knowing

  • The token changes every time the agent starts. If the agent restarted, paste the new line without disconnecting first: Golem sees that the previous connection is dead, replaces it and tells you so (replaced_dead). Pasting the same line twice is not an error either: it reuses it.
  • If it says alias_en_uso, there really is another live connection with that alias, to another agent, and probably another session working with it. The message says which machine it is connected to. Use another alias, or golem_disconnect if you know nobody needs it any more.
  • The agent shuts itself down after 30 minutes with no requests. That is on purpose: no port is left open on anybody's machine because somebody forgot.
  • You can connect to several machines at once, each with its alias: golem_connect <line> alias=other publishes other__run_powershell. In evaluation mode, one live connection at a time.
  • Several files in one go: golem_push paths = ["C:\\a\\one.dbf", "C:\\b\\two.dll"] remote_path = "C:\\target". Always absolute paths, and each one lands in the target with its own name.
  • Only the tables in a folder: golem_pull remote_path = "…" local_path = "…" include = ["*.dbf", "*.cdx"]. include is written like exclude and applied before it.

If something does not work

What you seeWhat it is
Claude has no golem_* toolIt did not read the configuration: close it completely and open it again
golem_connect says it cannot connectThe agent is not running, or the other machine's firewall does not let that port through
"the certificate is not trusted"The agent generates its own on every run. The fingerprint travels in the line you paste: if you did not paste it whole, paste it again
I installed it and it still does not show upCheck that %LOCALAPPDATA%\Golem\golem-client.exe exists. If it is not there, the antivirus took it
tope_de_evaluacion when calling a tool that acts, or connecting to the second hostNot a fault: it is the evaluation limit. The tools that act need a license, and without one there is one live connection at a time: drop the one you have with golem_disconnect, or buy a license

Large transfers

golem_push and golem_pull stop on their own after 30 seconds and return done: false with a resume: call again the same way adding that resume, as many times as needed, until done is true. A 305 MB folder is three rounds.

Thirty seconds is low on purpose: what cuts a long call is your MCP client's patience, which Golem cannot know. If you know yours lasts longer, raise it with the environment variable GOLEM_MAX_CALL_SECONDS (1 to 240) in the env block that starts the client:

golem entry with GOLEM_MAX_CALL_SECONDS in the env block
{
  "mcpServers": {
    "golem": {
      "command": "C:\\Users\\<tu usuario>\\AppData\\Local\\Golem\\golem-client.exe",
      "args": [
        "proxy"
      ],
      "env": {
        "GOLEM_MAX_CALL_SECONDS": "120"
      }
    }
  }
}

An out-of-range or mistyped value is ignored and 30 is used. And the easiest route is not to write the whole entry: the installer already left a golem one in your client’s configuration, with the path filled in, and you only add the env block to it.