Add MCP hook matchers and rewrite /review-pr for MCP #14

Closed
opened 2026-02-24 18:42:59 +00:00 by forgejo_admin · 0 comments
Contributor

Summary

Hooks currently only fire on Bash commands. MCP tool calls bypass enforcement. Add hook matchers for MCP tools and rewrite /review-pr to use forgejo-mcp instead of curl.

Changes

4a: MCP Hook Matchers

  • hooks/block-mcp-merge.sh (NEW): PreToolUse for mcp__forgejo__merge_approved_pr — unconditional "ask"
  • hooks/remind-mcp-review-loop.sh (NEW): PostToolUse for mcp__forgejo__submit_pr — review-loop reminder
  • hooks/post-mcp-merge-rebase.sh (NEW): PostToolUse for mcp__forgejo__merge_approved_pr — fast-forward main
  • settings.json: Add 3 MCP hook entries

4b: /review-pr Rewrite

  • commands/review-pr.md: Use mcp__forgejo__review_pr() and mcp__forgejo__comment_on_pr() for Forgejo repos
  • Reference PR body template: get_note(slug="template-pr-body")
  • Remove all curl and source ~/secrets patterns

Part of

Plan: plan-2026-02-24-enforcement-unification (Phase 4a + 4b)

## Summary Hooks currently only fire on Bash commands. MCP tool calls bypass enforcement. Add hook matchers for MCP tools and rewrite `/review-pr` to use forgejo-mcp instead of curl. ## Changes ### 4a: MCP Hook Matchers - `hooks/block-mcp-merge.sh` (NEW): PreToolUse for `mcp__forgejo__merge_approved_pr` — unconditional "ask" - `hooks/remind-mcp-review-loop.sh` (NEW): PostToolUse for `mcp__forgejo__submit_pr` — review-loop reminder - `hooks/post-mcp-merge-rebase.sh` (NEW): PostToolUse for `mcp__forgejo__merge_approved_pr` — fast-forward main - `settings.json`: Add 3 MCP hook entries ### 4b: /review-pr Rewrite - `commands/review-pr.md`: Use `mcp__forgejo__review_pr()` and `mcp__forgejo__comment_on_pr()` for Forgejo repos - Reference PR body template: `get_note(slug="template-pr-body")` - Remove all curl and `source ~/secrets` patterns ## Part of Plan: `plan-2026-02-24-enforcement-unification` (Phase 4a + 4b)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/claude-custom#14
No description provided.