Use GitHub-signed commits for repository file write tools
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 68/100
Rechercherichtung
Beginne mit den Implementierungen von create_or_update_file und push_files und vergleiche sie anschließend mit dem bestehenden delete_file-Pfad und seiner Verwendung von GitHub-APIs. Untersuche GraphQL createCommitOnBranch und bewahre die bestehenden Tool-Eingaben und die Form der Antwort. Fertig ist die Aufgabe, wenn Schreibvorgänge unterstützte von GitHub verifizierte Commits erzeugen und Pull Requests die Anforderungen an signierte Commits erfüllen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
Repository write tools such as create_or_update_file and push_files can create unsigned commits. In repositories that require verified commit signatures, the MCP-created pull request is then blocked with:
Commits must have verified signatures.
Reproduction
- Use the MCP server against a repository with a ruleset/branch protection rule requiring signed commits.
- Create a branch.
- Use
create_or_update_fileorpush_filesto write a commit. - Open a pull request.
Actual behavior
The commit can be reported by GitHub as verification.verified=false with verification.reason=unsigned, and the pull request cannot be merged while the signed-commit rule is active.
Expected behavior
Repository write tools should use a GitHub API path that can produce GitHub-verified commits when supported by the authenticated actor, so MCP-generated pull requests can satisfy signed-commit requirements without clients managing GPG or SSH signing keys.
Notes
I verified in an internal test repository that switching the file write to GraphQL createCommitOnBranch produced a commit with:
verification.verified=trueverification.reason=valid
The existing delete_file implementation already avoids the simpler REST contents deletion path because of commit signing behavior. The same issue can affect create/update and multi-file writes.
Proposed fix
Use GraphQL createCommitOnBranch for create_or_update_file and push_files, keeping the existing tool inputs and response shape as much as possible.
- Vorherrschende Sprache
- Go
- Sterne
- 33.1k
- Forks
- 5k
- Ø Merge
- 2 T. 3 Std.
- Gemergte PRs (30 T.)
- 18
Entwicklungsumgebung
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus github/github-mcp-server
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
github/github-mcp-server#3235 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
github/github-mcp-server#3042 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
github/github-mcp-server#3032 · 1 Reaktion ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
github/github-mcp-server#2803 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
github/github-mcp-server#2740 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in github/github-mcp-server
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
siderolabs/terraform-provider-talos#414 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
JuliaComputing/jh#63 · 1 Kommentar ·
-
area/proxy kind/bug priority/backlog triage/accepted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
lexfrei/cloudflare-tunnel-gateway-controller#840 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Priority: Normal Type: Bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
cloudflare/cloudflared#1747 ·