Repository navigation
MainSequence Desktop 0.4.19 preview
Pre-releaseRegistered MCP tools now come from devtools 0.3.12's shared project-tool registry (devtools
ADR 0004, "Shared project-tool registry for host plugins"). Until 0.4.18 this plugin and the
Codex plugin each carried their own copy of the tool name (ms_<tool>_<hash>), the tool
definition, the result shape and the refresh loop, kept equal by hand. devtools owns them
now; the hook keeps only what is Claude's: $.tool.register, the $.ui.ask confirmation
before every call, the Messages API block conversion and one worker per action.
What changes for a session:
- Startup. The hook asks the worker for the catalog (
mcp-catalog) and registers what
it returns, first from the sharedproject-tool-catalog.jsonbeside
mcp-connections.json, so the environment's tools are available at once instead of after
one worker per connection, then after a forced read of every connection. Connect,
disconnect and Re-register tools read the connections directly. - Names. For every remote tool name of up to 32 characters (all 70 CRM tools today) the
registered name is unchanged. A longer remote name is now cut at 32 characters instead of
42, because the Codex plugin qualifies the name under a 64-character limit; its hash, and so
its identity, is unchanged. Tool descriptions readMainSequence <release name> [<environment>]: <tool>, with the release's own name first, as in Codex. - Results. The worker answers a tool call with devtools'
mcp-tool-call: the remote
content blocks, then one JSON block with summary, effects, error and structured content; the
hook converts the blocks. The bytes Claude sees are the ones 0.4.18 produced. - Resilience. A connection whose catalog cannot be read keeps its earlier tools in the
shared catalog file and is named in the warning under the list, as before. devtools gives a
project request 120 s (a scaled-to-zero release has taken over a minute to answer) and
honours a tool's advertised_meta["mainsequence.ai/timeout-seconds/v1"]up to 300 s, and
its error messages now name the endpoint, the request and the HTTP status, and tell a
timeout from a connection failure. - Names of connections.
claudeMcpNames.tsis removed: devtools stores a connection's
names with it since 0.3.1 and labels discovery rows with their repository's name on request
(enrichNames).
Validation: 97 Node tests (the hook tests now assert the names and definitions devtools
produces, the two-step startup registration, the shaped result path and the retained tools of
an unreadable connection; the packaged-worker MCP test is unchanged apart from asking for
discovery labels). Loader validation and the ten native Desktop simulator
tests passed on Desktop's bundled Code 2.1.304, with the distribution checks. Against the local
backend, the saved MainSequenceCRMAPI connection's 72 tools registered from the shared catalog in
under a second, ms_crm_contacts_list_183f8138 among them, and a confirmed crm_contacts_list page
of one returned in under ten seconds.
Bundles devtools 0.3.12. Update from the MainSequence marketplace and reload the plugin in
the Code chat. Node 22+ required.
Source revision: 0ebc3d2. Archive SHA-256: 48d23226e6f44d6867e1c8b72ce2d56682d147c5263e4884bddf5fd451607e24.