Catalog mode
Start with a handful of tools and switch areas on as you need them.
144 tools is a lot of context to hand a model before it has done anything. Every one carries a name, a description and a JSON schema, and all of it is sent on every request whether the conversation is about materials or not.
Catalog mode makes that opt-in. With it on, the connector lists only a core handful, and you switch areas on as the work needs them.
It is off by default, and it will stay that way. Nothing changes unless you turn it on, and everything below is inert until you do. That default is a settled decision rather than a current value: see Whether you want it at the end.
Turning it on
Two places, and they compose.
In the editor, per project
Project Settings > Plugins > HullForge > Catalog mode. Tick it, and optionally list the areas to start with.
This is the one to use. It travels in the session file the same way the port does, so there is nothing to configure on the Claude side, it applies to everyone who opens the project, and changing it needs no client restart. The connector picks it up on its next call.
On the connector, per launch
HULLFORGE_CATALOG_MODE=1
HULLFORGE_CATALOG_AREAS=Materials,Blueprints
For overriding the project on your own machine without editing a setting that gets committed.
How they compose
The environment variable wins whenever it says anything, because setting it is a deliberate choice by one person and the project setting is shared. That includes saying off:
HULLFORGE_CATALOG_MODE |
Project setting | Result |
|---|---|---|
| unset | off | Off. Every tool listed |
| unset | on | On |
1 |
off | On |
0 |
on | Off. You get every tool without touching the project |
| a typo | on | On. An unrecognised value defers rather than guessing |
That last row matters more than it looks. A value the connector does not understand is treated as unset, not as off, so a typo cannot silently ignore a project that asked for the mode.
Areas work the same way. HULLFORGE_CATALOG_AREAS replaces the project’s list
when it is set, and setting it to an empty string is not the same as leaving it
unset: empty means “start with nothing but Core” and overrides the project,
where unset means “use whatever the project says”.
Both variables are read on every call rather than cached at startup, so setting them and restarting the client gives you what you asked for with no stale value in the way.
What you get
With catalog mode on, the tool list holds the Core area plus whatever you have switched on, and three tools for driving it:
| Tool | What it does |
|---|---|
hf_list_tool_areas |
Every area, its tool count, and whether it is currently listed |
hf_enable_tool_areas |
Switch areas on. The tool list updates immediately |
hf_disable_tool_areas |
Switch areas off again to free the context back up |
hf_list_tool_areas is listed whether or not catalog mode is on, so you can
always ask what exists. The other two only appear when the mode is on, because a
tool that would do nothing is worse than a tool that is absent. Ask for either
of them with the mode off and the refusal tells you which variable to set.
Core and Changes cannot be switched off. Core holds the tools you need to ask anything at all, and a client that disabled it would have no way back. Changes holds the record of what has already been changed, which is what you reach for when something has gone wrong: needing to switch it on first is the worst possible moment to find out it was hidden. It is two tools, so what it costs you is nothing against what it saves once.
Nothing else is on that list. The bar is not “useful”, it is “hiding this makes the mode itself dangerous”.
What it looks like in practice
> Which HullForge tool areas are there?
Catalog mode is ON. 5 of 144 tools are listed, across 32 areas.
on Core 3
on Changes 2
off Materials 5
off LODs 4
...
> Switch on materials and textures.
8 more tools listed.
The list changes without a client restart. The connector declares the MCP
listChanged capability, so enabling an area tells your client to re-fetch, the
same mechanism that makes tools appear when you open an editor. See
How it works.
Areas you switch on by hand stay on if the editor blips and the connector reconnects. The project’s list seeds the session once, at the start, rather than being reapplied on every reconnect: otherwise the tool list would quietly shrink back the moment anything hiccuped.
Whether you want it
You probably do not, at first. Every tool being present is the reason “M_Rock renders untextured, what is wrong with it?” works: answering it crosses materials, meshes, landscape layers, the editor log and the viewport, and a model that can only see one of those goes looking in the wrong place.
Catalog mode is worth it when you are working narrowly and at length in one area, or when you are running HullForge alongside several other connectors and the combined tool list has become the largest thing in the conversation.
If you turn it on and find yourself enabling six areas at the start of every session, turn it back off. That is the honest answer rather than a reason to keep configuring it.