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

kimi-cu MCP tool "js_reset" ships inputSchema without "properties", LM Studio rejects every request with 400 invalid_type

Aperta Adatta ai principianti
#4,177 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
76/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
json, typescript
Ambito
tooling

Direzione di ricerca

Inizia tracciando come kimi-code raccoglie le definizioni degli strumenti MCP e crea gli strumenti inviati ai provider compatibili con OpenAI; il report rimanda alla sanitizzazione dello schema discussa in #792. Controlla nello schema in uscita la presenza di parametri oggetto senza properties, quindi confronta il comportamento con la riproduzione fornita di LM Studio. Il lavoro è completato quando la richiesta riesce con l’aggiunta di un oggetto properties vuoto.

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

Descrizione

Summary

The js_reset tool exposed by the kimi-cu MCP server (Kimi Computer Use plugin) has an inputSchema of:

{"type": "object", "additionalProperties": false}

It is missing the properties key. OpenAI's API tolerates this, but LM Studio's OpenAI-compatible server validates tools[] with zod and requires function.parameters.properties to be present, so every chat request fails with HTTP 400 before reaching the model.

Environment

  • kimi-cu plugin: 0.6.3 (~/.kimi-code/plugins/managed/kimi-cu/kimi.plugin.json)
  • KimiCU.app: 0.6.6 (/Applications/KimiCU.app, bundle id ai.kimi.cu)
  • macOS, provider type openai, base_url http://127.0.0.1:1234/v1 (LM Studio), model qwen/qwen3.5-9b

Error

400 "[
  {
    "code": "invalid_type",
    "expected": "object",
    "received": "undefined",
    "path": [25, "function", "parameters", "properties"],
    "message": "Required"
  }
]"

Tool index 25 (0-based) in the request is exactly mcp__kimi-cu__js_reset. I extracted the 47-tool payload from the session wire log: it is the only tool whose parameters lacks properties.

Minimal reproduction (against LM Studio directly, no kimi-code involved)

# tools = [{"type": "function", "function": {"name": "js_reset",
#   "description": "reset",
#   "parameters": {"type": "object", "additionalProperties": False}}}]
# POST /v1/chat/completions  ->  400 with the exact zod error above

# Same tool with "properties": {} added  ->  200 OK

Expected behavior

js_reset's inputSchema should be:

{"type": "object", "properties": {}, "additionalProperties": false}

An object schema without properties is non-idiomatic JSON Schema and breaks strict validators. Two possible fixes:

  1. Fix the schema in the KimiCU MCP server (the tool definition lives in the compiled /Applications/KimiCU.app binary, so users cannot patch it themselves).
  2. Defensively, kimi-code could normalize MCP tool schemas before sending them to OpenAI-compatible providers (fill missing properties: {} for object schemas) — related to the schema-sanitization gap discussed in #792.

Workaround

Disable the kimi-cu plugin, or remove "js_reset" from enabledTools in kimi.plugin.json; requests to LM Studio then succeed.

Lingua principale
TypeScript
Stelle
7.8k
Fork
1.3k
Merge medio
1g 1h
PR unite (30g)
156

Preparare l'ambiente

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 MoonshotAI/kimi-code

Tutte le issue di MoonshotAI/kimi-code

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.