Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Use GitHub-signed commits for repository file write tools

Ouverte
#2,771 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
68/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
go, graphql
Domaine
api, backend

Piste de recherche

Commencez par les implémentations de create_or_update_file et push_files, puis comparez-les avec le chemin existant de delete_file et son utilisation des API GitHub. Étudiez GraphQL createCommitOnBranch et préservez les entrées des outils existantes ainsi que la forme de la réponse. La tâche est terminée lorsque les écritures produisent des commits vérifiés par GitHub lorsque cela est pris en charge et que les pull requests respectent les exigences relatives aux commits signés.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

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

  1. Use the MCP server against a repository with a ruleset/branch protection rule requiring signed commits.
  2. Create a branch.
  3. Use create_or_update_file or push_files to write a commit.
  4. 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=true
  • verification.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.

Langage dominant
Go
Étoiles
33.1k
Forks
5k
Merge moyen
2 j 3 h
PR mergées (30 j)
18

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de github/github-mcp-server

Toutes les issues de github/github-mcp-server

Issues similaires

Plus d'issues Go

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.