Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: github/github-mcp-server
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.28.1
Choose a base ref
...
head repository: github/github-mcp-server
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.29.0
Choose a head ref
  • 17 commits
  • 138 files changed
  • 10 contributors

Commits on Jan 12, 2026

  1. chore: remove binary files

    alexandear authored and SamMorrowDrums committed Jan 12, 2026
    Configuration menu
    Copy the full SHA
    31b541e View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2026

  1. Implement recursive JSON key sorting for toolsnaps

    Sort all JSON object keys alphabetically at every level in toolsnaps by
    unmarshaling and remarshaling. This leverages Go's built-in behavior where
    json.Marshal automatically sorts map keys alphabetically, ensuring
    consistent field ordering and eliminating noop churn in diffs.
    
    Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
    Copilot and SamMorrowDrums committed Jan 15, 2026
    Configuration menu
    Copy the full SHA
    87a1110 View commit details
    Browse the repository at this point in the history
  2. Regenerate toolsnaps with deterministic sorting

    Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
    Copilot and SamMorrowDrums committed Jan 15, 2026
    Configuration menu
    Copy the full SHA
    0bf791a View commit details
    Browse the repository at this point in the history
  3. Add test for struct field ordering in toolsnaps

    Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
    Copilot and SamMorrowDrums committed Jan 15, 2026
    Configuration menu
    Copy the full SHA
    3ea9bfc View commit details
    Browse the repository at this point in the history
  4. Bug fix: invalid tool should error out (#1776)

    * get it working
    
    * clean up approach by moving cleantools inside builder, this simplifies remote server too
    
    * add tests for trimming and deduplication
    
    * error out in the builder if there are unrecognized tools
    
    ---------
    
    Co-authored-by: Sam Morrow <info@sam-morrow.com>
    tommaso-moro and SamMorrowDrums authored Jan 15, 2026
    Configuration menu
    Copy the full SHA
    19beb33 View commit details
    Browse the repository at this point in the history
  5. Add custom_instructions parameter to assign_copilot_to_issue tool

    - Added optional custom_instructions parameter to tool schema
    - Updated implementation to pass custom instructions to agent assignment
    - Added test case to verify custom_instructions works correctly
    - Updated toolsnaps and documentation
    
    The custom_instructions parameter allows users to provide additional
    context, constraints, or guidance to the Copilot agent beyond what's
    in the issue body, addressing the issue where additional context
    would otherwise be lost.
    
    Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
    Copilot and SamMorrowDrums committed Jan 15, 2026
    Configuration menu
    Copy the full SHA
    d88eb83 View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2026

  1. Fix dismiss_notification to accept HTTP 204 No Content response

    - Add http.StatusNoContent (204) to the list of accepted success status codes
    - Add test case for 204 response when marking notification as done
    - Retain existing test for 200 response for backwards compatibility
    
    Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
    Copilot and SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    ccf5191 View commit details
    Browse the repository at this point in the history
  2. adding feature flag on dependency level (#1801)

    * wip injecting ff function into tool as dep
    
    * remove debug
    
    * fix linter
    
    * add better test
    
    * adding compile time check
    
    * move experimental to seperate config/ff value
    
    * adding test var
    
    * fixing test
    
    * adding flag and possibility to call feature checker
    
    * fixing name
    tonytrg authored Jan 16, 2026
    Configuration menu
    Copy the full SHA
    3af1129 View commit details
    Browse the repository at this point in the history
  3. feat: poll for linked PR after assigning Copilot to issue

    Enhances the assign_copilot_to_issue tool to automatically poll for
    the PR created by the Copilot coding agent after assignment.
    
    Changes:
    - Add findLinkedCopilotPR() to query issue timeline for CrossReferencedEvent
      items from PRs authored by copilot-swe-agent
    - Add polling loop (9 attempts, 1s delay) matching remote server latency
    - Return structured JSON with PR details when found, or helpful note otherwise
    - Add PollConfig for configurable polling (used in tests to disable)
    - Add GraphQLFeaturesTransport for feature flag header support
    
    The returned response now includes:
    - issue_number, issue_url, owner, repo
    - pull_request object (if found during polling)
    - Note with instructions to use get_copilot_job_status if PR not yet created
    SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    09adfc7 View commit details
    Browse the repository at this point in the history
  4. fix: filter PRs by timestamp to avoid returning stale results

    When polling for a linked PR after assigning Copilot to an issue,
    we now capture the assignment time before the mutation and filter
    to only return PRs created after that time. This prevents the tool
    from incorrectly returning old PRs from previous Copilot assignments.
    SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    bece2b5 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    92d8d51 View commit details
    Browse the repository at this point in the history
  6. fix: address review feedback

    - Document GraphQLFeaturesTransport is for library consumers
    - Convert githubv4.Int/String to native Go types in result map
    - Remove misleading log comment since tool handlers lack logger access
    SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    d3ff0a2 View commit details
    Browse the repository at this point in the history
  7. refactor: use GraphQLFeaturesTransport internally

    Replace inline GraphQL-Features header logic in bearerAuthTransport with
    the exported GraphQLFeaturesTransport. This removes code duplication and
    ensures the transport is actually used, not just exported.
    SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    f1d33d5 View commit details
    Browse the repository at this point in the history
  8. feat: add progress notifications during PR polling in assign_copilot_…

    …to_issue
    
    Add MCP progress notifications during the PR polling loop to provide
    real-time status updates while waiting for Copilot to create a PR.
    
    Changes:
    - Use the request parameter to access the ServerSession for notifications
    - Send an initial progress notification when polling starts
    - Send progress updates on each polling attempt with attempt count
    - Only send notifications when progressToken is provided by the client
    
    This aligns with the behavior in create_pull_request_with_copilot tool
    and improves the user experience during the waiting period.
    SamMorrowDrums committed Jan 16, 2026
    Configuration menu
    Copy the full SHA
    a663a6b View commit details
    Browse the repository at this point in the history
  9. Add default label to all new issues (#1828)

    * Add default label to all new issues
    
    * Run on all issues
    
    * Update .github/workflows/issue-labeler.yml
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    * Update .github/workflows/issue-labeler.yml
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    
    ---------
    
    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
    JoannaaKL and Copilot authored Jan 16, 2026
    Configuration menu
    Copy the full SHA
    7c053f1 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2026

  1. build(deps): bump github.com/go-viper/mapstructure/v2 from 2.4.0 to 2…

    ….5.0 (#1798)
    
    * build(deps): bump github.com/go-viper/mapstructure/v2
    
    Bumps [github.com/go-viper/mapstructure/v2](https://github.com/go-viper/mapstructure) from 2.4.0 to 2.5.0.
    - [Release notes](https://github.com/go-viper/mapstructure/releases)
    - [Changelog](https://github.com/go-viper/mapstructure/blob/main/CHANGELOG.md)
    - [Commits](go-viper/mapstructure@v2.4.0...v2.5.0)
    
    ---
    updated-dependencies:
    - dependency-name: github.com/go-viper/mapstructure/v2
      dependency-version: 2.5.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    
    * chore: regenerate license files
    
    Auto-generated by license-check workflow
    
    ---------
    
    Signed-off-by: dependabot[bot] <support@github.com>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: JoannaaKL <joannaakl@github.com>
    3 people authored Jan 19, 2026
    Configuration menu
    Copy the full SHA
    950b1eb View commit details
    Browse the repository at this point in the history
  2. Add tool search CLI (#1839)

    * Add tool search CLI
    
    * Update comments
    
    * Update docs
    
    * Generate docs
    
    * Dont document other commands
    
    * Licenses
    
    * chore: regenerate license files
    
    Auto-generated by license-check workflow
    
    * Try to unlock checks
    
    * generate docs
    
    ---------
    
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    JoannaaKL and github-actions[bot] authored Jan 19, 2026
    Configuration menu
    Copy the full SHA
    e81f120 View commit details
    Browse the repository at this point in the history
Loading