Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Proposal] Soft maximum field length limits for input schema

Aperta
#359 1 commento 1 reazione 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
html
Ambito
api

Direzione di ricerca

Read the related discussion in #73 and #219 and PR #265, then review the WebMCP specification sections defining tool names, input schemas, and metadata. The issue asks participants to agree on recommended field limits, enforcement for parameter names, and Unicode code point measurement; done means the proposal has an ecosystem decision. The payload does not identify specific files or tests.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

To help ground the discussion in #73, #219, and PR #265, we (Chrome) analyzed field lengths (in Unicode code points) across 13,472 unique public WebMCP tools indexed on webmcp.com (deduplicated).

The goal here is to align on a baseline set of limits and gather ecosystem feedback, using Hard Maximums for programmatic identifiers and Soft Maximums for natural-language descriptions. This will help us balance prompt-injection mitigation against varying model capacities.

Proposed Limits & Distribution

Unlike a browser-enforced Hard Maximum (which rejects registration in registerTool()), a Soft Maximum is a recommendation: well-behaved agents should accept at least up to the Soft Maximum without truncating or rejecting the field, while remaining free to accept longer inputs if their model/context budget allows. Web developers who stay within the Soft Maximum should expect reliable support across agents.

(Defining broader "well-behaved agent" guidelines could be a useful follow-up, though out of scope for this discussion.)

Field Proposed Limit Limit Type p50 p90 p95 p99 Max Pass Rate (webmcp.com unique)
Tool Name (tool.name) 128 code points (ASCII only per spec) Hard Max (already in spec) 16 25 28 36 64 100%
Parameter Name (inputSchema keys) 128 code points Hard Max (or Soft Max) 7 13 16 22 43 100%
Tool Description (tool.description) 750 code points Soft Max (recommended limit) 130 340 468 1,092 11,251 98.1%
Parameter Description (inputSchema descriptions) 500 code points Soft Max (recommended limit) 46 110 153 301 14,348 99.7%
  • A note on Hard vs. Soft Max for Parameter Names (128 code points): Since tool.name already has a 128 code point hard cap in the spec, we could also make parameter names a 128 code point Hard Max to keep programmatic identifiers symmetric. If we prefer not to recursively validate inputSchema keys during registerTool(), we can establish 128 code points as a Soft Max recommendation alongside the description fields.

I also sampled tools from webmcp.com that do not "pass" the recommended tool description and parameter description limits. All of those I sampled could be rewritten in fewer code points or split up into multiple tools. LMK if anyone wants more info on this.

Would love feedback from site developers & agent builders:

  1. For agent & model developers: Are 750 / 500 / 128 code points reasonable minimum acceptance thresholds for well-behaved agents to guarantee without truncation?
  2. Parameter Names: Should parameter names be enforced as a Hard Maximum in the spec (symmetric with tool.name), or kept as a Soft Maximum recommendation so registerTool() doesn't need to recursively validate inputSchema keys?
  3. Text Unit (Unicode code points): Are there any objections to standardizing on Unicode code points for these tool metadata fields to minimize developer burden (vs. UTF-8 bytes or model-specific tokens) and avoid penalizing non-Western scripts (which would also resolve #219 and unblock PR #265)?

cc: @johannhof @markafoltz @domfarolino

Lingua principale
Bikeshed
Stelle
4.7k
Fork
328
Merge medio
2g 9h
PR unite (30g)
15

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di webmachinelearning/webmcp

Tutte le issue di webmachinelearning/webmcp

Issue simili

Altre issue su Backend & API Design

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.