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

GitHub plugin: issue_write / create_pull_request stall in headless automations on the MCP App form (needs X-MCP-Features opt-out)

Abierto Apto para principiantes
#1,025 1 comentario 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
72/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
github, json
Área
tooling

Línea de trabajo

Empieza con third_party/github/mcp.json y la configuración del plugin que expone GITHUB_PERSONAL_ACCESS_TOKEN; el bloqueo ocurre porque solo se envía Authorization y las ejecuciones headless no pueden enviar el formulario de MCP App. Decide si añadir X-MCP-Features: mcp_apps_disable_form_deferral a ese conjunto de cabeceras o exponerlo como variable opcional del plugin, y luego verifica que una automatización pueda ejecutar issue_write y crear un issue sin formulario. La lógica de decisión externa está en pkg/github/ui_capability.go de github-mcp-server, pero la edición corresponde a la configuración de este plugin.

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

Descripción

Summary

Since around Oct 22, Cursor automations that create issues through the github plugin (third_party/github) stop at an interactive approval form, and no issue is created. When you watch the run, it stops on a prompt. In an automation nobody is there to click Submit, so the run ends with no issue.

This isn't a token or permissions problem. Reconnecting with a fine-grained PAT that has issue write access didn't change anything.

Cause

GitHub's MCP server now hands form-backed write tools (issue_write, create_pull_request, update_pull_request) off to an MCP App form whenever the client advertises the io.modelcontextprotocol/ui capability. In that case the tool returns an "awaiting form submission" result ("An interactive form has been shown to the user… STOP… The issue has NOT been created yet") instead of creating the issue.

  • Form deferral is on by default: github/github-mcp-server@63f559545320fa72eaf184c4a42e05904c09e817 (#3348)
  • Decision logic: shouldDeferToForm in pkg/github/ui_capability.go
  • Opt-out: github/github-mcp-server@a217a7f43a76a4cd6909ba6814d88a886064488c adds the mcp_apps_disable_form_deferral feature flag, which the remote server accepts through the X-MCP-Features header.

The plugin's mcp.json only sends Authorization, and the plugin's settings only expose GITHUB_PERSONAL_ACCESS_TOKEN. That leaves plugin users no way to opt out.

Workaround (confirmed working)

Add a custom (non-plugin) MCP server with the extra header:

{
  "mcpServers": {
    "github-direct": {
      "type": "http",
      "url": "https://api.githubcopilot.com/mcp/",
      "headers": {
        "Authorization": "Bearer <token>",
        "X-MCP-Features": "mcp_apps_disable_form_deferral"
      }
    }
  }
}

With this header, issue_write creates the issue directly again.

Suggested fix

Any of these would work:

  1. Don't advertise the MCP Apps UI capability to this server in headless runs (automations and background agents), since nobody can submit the form there.
  2. Add "X-MCP-Features": "mcp_apps_disable_form_deferral" to the plugin's mcp.json headers.
  3. Expose an optional plugin variable for X-MCP-Features so users can opt out themselves.
Lenguaje dominante
TypeScript
Estrellas
13.9k
Forks
1.4k
Merge medio
6 h 55 min
PR fusionados (30 d)
158

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

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 cursor/plugins

Todos los issues de cursor/plugins

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.