MF-5: Forge-neutral MCP namespace (mcp__forge__*) #296
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/claude-hooks#296
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
As a skill/agent author, I want a single forge-neutral MCP namespace (
mcp__forge__*) so that the same skill runs unchanged against any configured forge — the agent never has to know whether the repo lives on Forgejo, GitHub, or GitLab.Acceptance criteria
Decision (documented inline)
ForgePortadapter bound to the agent's repo. Not per-forge MCPs.New MCP package
packages/forge-mcp/.forge__create_issueforge__get_issue_by_indexforge__list_repo_issuesforge__add_issue_labelsforge__remove_issue_labelsforge__update_issueforge__create_issue_commentforge__list_issue_commentsforge__create_pull_requestforge__get_pull_request_by_indexforge__list_repo_pull_requestsforge__list_pull_request_filesforge__create_pull_reviewforge__create_review_requestsforge__delete_review_requestsforge__submit_pull_reviewforge__list_pull_reviewsforge__list_pull_review_commentsforge__get_pull_reviewforge__merge_pull_requestforge__get_file_contentforge__get_workflow_runforge__list_workflow_runsforge__list_repo_labelsForgePortsurface used by today's skills.)FORGE_TYPEenv (forgejo|github|gitlab) + per-forge token file path select the adapter at MCP startup.Container wiring
packages/forge-mcpin place of (or, during the transition window, alongside)forgejo-mcp.Skill migration
forge__*tool names:breakdown,design-implement,review,implement,security-review,revise-claude-md..claude/settings.json(or equivalent) include the new namespace.Transitional alias
forgejo-mcpstays installed for one release so any unmigrated skill keeps working.Tests
forge-mcp.test.ts: each tool call maps to the correctForgePortmethod with the env-selected adapter (Forgejo/GitHub via stub).breakdownruns end-to-end against a fake GitHubForgePort.mcp__forgejo__create_issue.Out of scope
mcp__forgejo__*-named skills that live outside this repo — other owners migrate on their own timeline.References
specs/multi-forge.md§ MF-5.packages/shared/— cross-app types.mcp__forgejo__*(grep theskills/tree).Dependencies