GitHub plugin: issue_write / create_pull_request stall in headless automations on the MCP App form (needs X-MCP-Features opt-out)
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
- 72/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- github, json
- Ambito
- tooling
Direzione di ricerca
Inizia con third_party/github/mcp.json e le impostazioni del plugin che espongono GITHUB_PERSONAL_ACCESS_TOKEN; lo stallo si verifica perché viene inviato solo Authorization e le esecuzioni headless non possono inviare il modulo MCP App. Decidi se aggiungere X-MCP-Features: mcp_apps_disable_form_deferral a quel set di header o esporlo come variabile opzionale del plugin, poi verifica che un'automazione possa eseguire issue_write e creare un issue senza modulo. La logica decisionale esterna si trova in pkg/github/ui_capability.go di github-mcp-server, ma la modifica appartiene alla configurazione di questo plugin.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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:
shouldDeferToForminpkg/github/ui_capability.go - Opt-out: github/github-mcp-server@a217a7f43a76a4cd6909ba6814d88a886064488c adds the
mcp_apps_disable_form_deferralfeature flag, which the remote server accepts through theX-MCP-Featuresheader.
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:
- 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.
- Add
"X-MCP-Features": "mcp_apps_disable_form_deferral"to the plugin'smcp.jsonheaders. - Expose an optional plugin variable for
X-MCP-Featuresso users can opt out themselves.
- Lingua principale
- TypeScript
- Stelle
- 13.9k
- Fork
- 1.4k
- Merge medio
- 6h 55m
- PR unite (30g)
- 158
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
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di cursor/plugins
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
cursor/plugins#1053 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
cursor/plugins#1012 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 80/100
cursor/plugins#990 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
statechart: a relative TLA2TOOLS or JAVA path fails, because TLC runs in the snapshot folderForse già presa @Ehsan-hash l’ha presa 2 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
cursor/plugins#973 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di cursor/plugins
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
lichess-org/lila#22324 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[Feature Request] [Web] Expose kvCacheQuantizationBits in the onnxruntime-web WebGPU EP optionsApertaep:WebGPU platform:web quantization
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
microsoft/onnxruntime#33752 ·
I maintainer di solito rispondono entro 2 giorni
-
[Skill Bug]: entra-agent-id: inaccurate blueprint permission inheritance and parent token sub claimApertabug entra-agent-id
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
microsoft/GitHub-Copilot-for-Azure#3467 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
fix(worker): keep normal prepare waiting states failure-freeForse già presa @LichKing-2234 l’ha presa oggi. Apertaagent:codex priority:P1
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
AgoraIO-Extensions/agent-infra#3745 ·
I maintainer di solito rispondono entro 1 giorno
-
The five-line work window can drop its oldest line: the per-line byte share ignores the JSON framingForse già presa @Eapp1e l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
makecindy/cindy#7973 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno