Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

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

Abierto Apto para principiantes
#4,177 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
76/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
json, typescript
Área
tooling

Línea de trabajo

Empieza por rastrear cómo kimi-code recopila las definiciones de herramientas MCP y construye las herramientas que envía a proveedores compatibles con OpenAI; el informe apunta a la sanitización del esquema tratada en #792. Comprueba el esquema saliente en busca de parámetros de objeto sin properties y luego compara el comportamiento con la reproducción proporcionada de LM Studio. Se considera terminado cuando la solicitud se procesa correctamente al añadir un objeto properties vacío.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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.

Lenguaje dominante
TypeScript
Estrellas
7.8k
Forks
1.3k
Merge medio
22 h 40 min
PR fusionados (30 d)
163

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de MoonshotAI/kimi-code

Todos los issues de MoonshotAI/kimi-code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.