Files
gitea_mcp/CHANGELOG.md
l3ocho c34e06aa2b feat: add merge tools, tests, and documentation
Added 3 new PR merge tools to complete v1.0.0:
- merge_pull_request: Merge PR with 5 strategies (merge, rebase, rebase-merge, squash, fast-forward-only)
- get_pr_merge_status: Check if PR is mergeable
- cancel_auto_merge: Cancel scheduled auto-merge

Changes:
- New merge methods in GiteaClient (gitea_client.py)
- New async wrappers in PullRequestTools with branch checks (tools/pull_requests.py)
- Tool definitions and dispatch routing in tool_registry.py
- Boolean type coercion for force_merge and delete_branch parameters
- Comprehensive test suite with 18 tests (test_pull_requests.py)
- Full documentation: README.md, CHANGELOG.md, CLAUDE.md

Features:
- 5 merge strategies with full Gitea API support
- Branch-aware security enforcement
- Type coercion handles MCP string serialization
- 100% test coverage for merge operations

Result:
- Total tools: 39 (7 PR operations + 3 merge = 10 PR tools)
- All tests passing (18 new merge tests + 60 existing tests)
- Ready for v1.0.0 release

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-02-08 16:38:35 -05:00

2.5 KiB

Changelog

All notable changes to gitea-mcp will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.0.0 - 2026-02-08

Added

  • Initial release as standalone package

  • 39 MCP tools across 7 categories:

    • Issue management (6 tools): list_issues, get_issue, create_issue, update_issue, add_comment, aggregate_issues
    • Label management (5 tools): list_labels, get_labels, suggest_labels, create_label, create_label_smart
    • Wiki & lessons learned (7 tools): list_wiki_pages, get_wiki_page, create_wiki_page, update_wiki_page, create_lesson, search_lessons, allocate_rfc_number
    • Milestone management (5 tools): list_milestones, get_milestone, create_milestone, update_milestone, delete_milestone
    • Issue dependencies (4 tools): list_issue_dependencies, create_issue_dependency, remove_issue_dependency, get_execution_order
    • Pull requests (7 tools): list_pull_requests, get_pull_request, get_pr_diff, get_pr_comments, create_pr_review, add_pr_comment, create_pull_request
    • PR merge operations (3 tools) — NEW: merge_pull_request, get_pr_merge_status, cancel_auto_merge
  • Merge strategies (5 supported):

    • merge — Create merge commit (default)
    • rebase — Rebase commits onto base, no merge commit
    • rebase-merge — Rebase then create merge commit
    • squash — Squash all commits into one
    • fast-forward-only — Only if fast-forward is possible
  • Dual-mode operation:

    • Project mode: Works with single configured repository
    • PMO/Company mode: Manages multiple repositories with org-level aggregation
  • Advanced features:

    • Branch-aware security with permission enforcement
    • Type coercion for MCP string serialization
    • Auto-detection of project vs PMO mode
    • Transport-agnostic architecture via tool_registry + dispatcher pattern
    • Comprehensive error handling and logging
  • Development:

    • Full test suite with 30+ test cases
    • Comprehensive documentation (README, CHANGELOG, CLAUDE.md)
    • Gitea PyPI registry distribution
    • CI/CD ready with pytest and coverage reporting

Notes

  • Extracted from leo-claude-mktplace v9.1.0 (mcp-servers/gitea/ v1.3.0)
  • Module renamed: mcp_servergitea_mcp
  • All existing functionality preserved and tested
  • Ready for use in Claude Code and other MCP-compatible systems