Skip to content

minimax 0.2.7: opt-in compactTools advertises only the four dispatcher tools - #1014

Merged
yetone merged 1 commit into
magpie-community:mainfrom
klarkxy:minimax-compact-tools
Nov 11, 2026
Merged

yetone merged 1 commit into
magpie-community:mainfrom
klarkxy:minimax-compact-tools

Conversation

@klarkxy

@klarkxy klarkxy commented Nov 11, 2026

Copy link
Copy Markdown
Contributor

Implements maintainer-approved option A from #1005, for the catalog-size drop described in #989.

What this does

Adds a plugin option compactTools, default false (package.json magpie.options). Users who do not set it keep today's named tools exactly as they are.

When compactTools: true:

  • the sixteen named Matrix tools are left out of tools/list
  • list_tools, tool_schema, call_tool, and web_search stay, with their descriptions and schemas unchanged
  • execution is unchanged: call_tool still validates against the live catalog and refuses bad arguments before the call leaves

No new prompt text. Nothing in the advertised tools names magpie or a vendor's limits. Option B (slim named tools / rewritten descriptions) is not in this PR.

Enable with:

magpie plugin options @magpie-community/opencode-minimax-auth '{"compactTools": true}'

Measured advertised tools/list size

Counted as agy does: mcp__magpie__minimax__<name> + newline + description + newline + the advertised input JSON Schema (compact JSON, including the site / account routing fields the plugin merges in). Character counts are exact. Token figures are approximate (chars/4); agy uses its own tokenizer, so treat tokens as indicative against the 20k customization budget.

Mode Tools Chars ~tokens (chars/4)
off (today, default) 20 32179 ~8045
compactTools: true 4 (list_tools, tool_schema, call_tool, web_search) 3865 ~966
saved 16 named Matrix tools omitted 28314 ~7079

The four remaining tools are byte-for-byte the same as today's. These character totals match the estimates in #1005 (32179 / 3865).

Tests

  • off (default, { compactTools: false }, and non-true values) leaves the advertised list byte-for-byte as today
  • on lists only the four dispatchers, with descriptions and schemas identical to the default list
  • call_tool still refuses bad arguments against the live schema when compact mode is on, and the priced connector call never goes out

Ran:

  • bun test packages/minimax: 165 pass, 0 fail
  • bun scripts/check.mjs: exit 0

Whether the #989 agy catalog gets its dropped tools back

Not verified end-to-end on the production agy-cli + Gemini 4 Carbon host used for #989, because this MiniMax plugin is not installed there (that host's plugin list is grok-auth, cursor-auth, and a local agy-cli checkout). Installing this build there would have added a new plugin rather than toggling an existing one, so it was left untouched. No backup was needed.

What was measured on existing conversations after the agy-cli 0.1.19 upgrade, from gen_metadata / executor_metadata (tool names and counts only):

  • The usual catalog is still the ~72-tool one from agy-cli: tools with large input schemas reach MCP tools/list but are not exposed to the model (Gemini 4 Carbon) #989: 59 tools in gen_metadata and the same 13 only in executor_metadata (mcp_browser, mavis, task, ask_user, update_goal, website_deploy, bash, grep, mcp__agent-bridge__call_capability, mcp__agent-bridge__dispatch_task, mcp__memorix__memorix_knowledge, mcp__memorix__memorix_search, mcp__memorix__memorix_store). This catalog does not include MiniMax tools, so compactTools cannot bring those 13 back.
  • The second, larger catalog from agy-cli: tools with large input schemas reach MCP tools/list but are not exposed to the model (Gemini 4 Carbon) #989 appeared rarely (one conversation with complete metadata). It had 81 tools in gen_metadata and 34 only in executor_metadata. All 20 MiniMax tools were present in the client-declared catalog. The 14 smaller ones stayed in gen_metadata; the six largest were among the 34 dropped: generate_image, submit_video_generation, query_video_generation, synthesize_speech, batch_text_to_audio, batch_text_to_music. Those were advertised to the model as mcp__magpie__minimax__… (client-declared ide-tools), so shrinking them requires enabling compactTools on the Magpie that serves the MiniMax MCP tools, not on the agy-cli host. Saving ~7079 tokens would not by itself absorb the rest of that 34 (memorix, autoplay, and other large tools remain).

So: this option shrinks MiniMax's own advertised text as designed. It should help a crowded catalog that includes these sixteen named tools, but it does not, by itself, restore bash / grep / task / ask_user on the usual #989 catalog.

Version

Package version is 0.2.6 → 0.2.7. #1008 also targets 0.2.7; the later merge can bump if both land.

…r tools (magpie-community#1005)

Adds a plugin option compactTools, default false. When true, the sixteen
named Matrix tools are left out of tools/list, and list_tools, tool_schema,
call_tool and web_search stay with their descriptions unchanged. call_tool
still validates against the live catalog. No new prompt text.

This is option A from magpie-community#1005, which yetone accepted for the catalog-size
drop in magpie-community#989.

Measured advertised tools/list (agy's count: mcp__magpie__minimax__<name>
+ newline + description + newline + compact input JSON Schema):
- off (today): 20 tools, 32179 chars, ~8045 tokens (chars/4)
- on: 4 tools, 3865 chars, ~966 tokens
- saved: 28314 chars, ~7079 tokens

Ran:
- bun test packages/minimax: 165 pass, 0 fail
- bun scripts/check.mjs: exit 0

magpie-community#1008 also targets 0.2.7; the later merge can bump if both land.
@yetone

yetone commented Nov 11, 2026

Copy link
Copy Markdown
Contributor

Harm scan: nothing stops this one (no new address, dependency or install script). One thing before merge: #1008 also takes minimax to 0.2.7, so whichever of the two lands second needs 0.2.8, or publish.yml sees a version npm already has and the second change never ships.

@yetone
yetone merged commit 2b87fad into magpie-community:main Nov 11, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants