GitHub plugin: issue_write / create_pull_request stall in headless automations on the MCP App form (needs X-MCP-Features opt-out)
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 72/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- github, json
- Domaine
- tooling
Piste de recherche
Commence par third_party/github/mcp.json et les paramètres du plugin qui exposent GITHUB_PERSONAL_ACCESS_TOKEN ; le blocage se produit parce que seul Authorization est envoyé et que les exécutions headless ne peuvent pas soumettre le formulaire MCP App. Décide s'il faut ajouter X-MCP-Features: mcp_apps_disable_form_deferral à cet ensemble d'en-têtes ou l'exposer comme variable de plugin optionnelle, puis vérifie qu'une automatisation peut exécuter issue_write et créer un issue sans formulaire. La logique de décision externe se trouve dans pkg/github/ui_capability.go de github-mcp-server, mais la modification relève de la configuration de ce plugin.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
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.
- Langage dominant
- TypeScript
- Étoiles
- 13.9k
- Forks
- 1.4k
- Merge moyen
- 6 h 55 min
- PR mergées (30 j)
- 158
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de cursor/plugins
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
cursor/plugins#1053 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
cursor/plugins#1012 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 80/100
cursor/plugins#990 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
statechart: a relative TLA2TOOLS or JAVA path fails, because TLC runs in the snapshot folderPeut-être pris @Ehsan-hash l’a pris il y a 1 jour. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
cursor/plugins#973 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de cursor/plugins
Issues similaires
-
area:plugins area:security area:skills bug has repro
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
anthropics/claude-code#105911 ·
Les mainteneurs répondent en général sous 1 jour
-
openspec-apply-change skill: when blocked, may select a ready artifact unrelated to missingArtifactsOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Fission-AI/OpenSpec#2165 ·
Les mainteneurs répondent en général sous 1 jour
-
🐞 bug 🧐 unconfirmed
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
Tencent/tdesign-vue-next#7032 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
gnosis/gnosis_vpn#661 ·
Les mainteneurs répondent en général sous 1 jour
-
content-freshness: staleOwnedContent doc comments still say 'complete receipt' (follow-up to #7912)Ouvertetriage:bug-verified
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
Les mainteneurs répondent en général sous 1 jour