modelcontextprotocol / modelcontextprotocol/inspector

Skills catalog budget setting has no CLI or TUI equivalent of the Web per-server setting

Open
#2,420 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement v2
Dominant language
TypeScript
Stars
10.9k
Forks
1.5k
Avg merge
6h 17m
Merged PRs (30d)
151

Description

Which version line?

v2 — current (@modelcontextprotocol/inspector@latest)

Which client?

All / shared core

Inspector version

2.7.0 (git tag) — static code-review finding, not run locally

Node version

N/A — static code review, no live run performed

Operating system (and browser, for the web client)

N/A — static code review

Transport

Not applicable / never connected

MCP server under inspection

N/A — this is a static code-review finding comparing clients/web/src/components/groups/ServerSettingsForm/ServerSettingsForm.tsx against clients/cli/src/cli.ts and clients/tui/tui.tsx in the 2.7.0 tag source, not a live reproduction against a running MCP server.

Steps to reproduce

Found via static review of the 2.7.0 tag source, not a live run.

  1. Web exposes a per-server "skills catalog budget" setting (skillCatalogMaxBytes / skillCatalogMaxSkills) through ServerSettingsForm.tsx, which flows into resolveSkillCatalogBudget() (core/mcp/skills.ts).
  2. Searching clients/cli/src/cli.ts for skillCatalogMax / skill-catalog finds no matching flag.
  3. Searching clients/tui/tui.tsx and clients/tui/src/App.tsx for the same finds no matching flag either.
  4. By contrast, other per-connection settings that vary the same way (--protocol-era, and a CIMD metadata-document URL option for OAuth) ARE present in all three clients' entry points.

I have not run the CLI or TUI to confirm the absence live; flagging what static grep across the 2.7.0 tag source shows.

Expected behavior

Either the CLI and TUI expose an equivalent way to configure the skills-catalog budget per connection (matching Web), or, if the Web-only scoping is intentional, that's documented explicitly rather than left to be discovered by diffing the three entry points.

Actual behavior

A CLI or TUI user has no way to configure the skills-catalog budget for a server at all — they're stuck with the default (SKILL_MAX_CATALOG_SKILLS / SKILL_MAX_CATALOG_BYTES) regardless of what a server's catalog actually needs, while a Web user can tune it per server. More generally, nothing in the repo tracks or asserts that CLI/TUI ship the same "which settings can this server's connection override" surface as Web at a given release, so this kind of drift can happen silently.

Suggested fix: add --skill-catalog-max-bytes / --skill-catalog-max-skills (or equivalent) flags to the CLI and TUI, or document the Web-only scoping if intentional. Longer term, a small matrix/test enumerating each per-server setting and which of the three clients exposes it would catch this kind of drift automatically.

Logs, errors, or screenshots

No response

Already prototyped a fix?

No response

Before you submit
  • I searched existing issues and this is not a duplicate.
  • This is not a security vulnerability report (those go through the private advisory process).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Compare clients/web/src/components/groups/ServerSettingsForm/ServerSettingsForm.tsx with clients/cli/src/cli.ts, clients/tui/tui.tsx, and clients/tui/src/App.tsx, then trace resolveSkillCatalogBudget() in core/mcp/skills.ts. Check how existing per-connection settings are wired and define whether CLI/TUI flags or explicit Web-only documentation is intended. Done means the three client surfaces have an agreed, tested setting scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
cli, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.