Commit Graph

671 Commits

Author SHA1 Message Date
Matt Holloway 11c30337ae remove old flags
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
2026-01-26 14:35:59 +00:00
Matt Holloway 5c0ec57e1f docs update (2) 2026-01-26 12:01:46 +00:00
Matt Holloway dce6266bc3 Merge branch 'main' into make-consolidated-projects-default 2026-01-26 11:54:21 +00:00
Matt Holloway 4f60af58be update docs 2026-01-26 11:54:06 +00:00
Matt Holloway 55d017eca5 default to consolidated actions/projects toolsets and add hold back flag 2026-01-26 11:52:38 +00:00
Tommaso Moro 15e66b3df3 Generate server instructions in Inventory (#1869)
* carry over from https://github.com/github/github-mcp-server/pull/1863

* remove unused inv

* update toolsnap

---------

Co-authored-by: Sam Morrow <info@sam-morrow.com>
2026-01-23 09:57:47 +00:00
Sam Morrow afc2396a0c Fix mcp-diff workflow triggers
Add push triggers to run on:
- Pushes to main branch (catches merges)
- Tag pushes (v*) for release comparisons against previous tags

The pull_request trigger alone doesn't run when commits are pushed
to PR branches via merge or direct push. Adding push triggers ensures
the diff runs in all expected scenarios.
2026-01-23 00:59:27 +01:00
Sam Morrow e559a36060 Rename workflow for mcp-server-diff action 2026-01-23 00:44:12 +01:00
Sam Morrow adfd83b12a Rename to mcp-diff.yml (action renamed to mcp-server-diff) 2026-01-23 00:44:12 +01:00
Sam Morrow 55d22d8320 chore: update mcp-conformance-action to v2 for security fixes 2026-01-23 00:44:12 +01:00
Sam Morrow f850ce31a4 chore: update mcp-conformance-action to v2.3.2 2026-01-23 00:44:12 +01:00
Sam Morrow f244b8a5f2 chore: update mcp-conformance-action to v2.3.0 2026-01-23 00:44:12 +01:00
Sam Morrow 4bbd84e74c ci: upgrade mcp-conformance-action to v2.2.0
v2.2.0 adds automatic HTTP server lifecycle management and
improved documentation for transport configuration.
2026-01-23 00:44:12 +01:00
Sam Morrow e1cde287d4 chore: update conformance action to v2.0.2 with Zod schema fix
Fixes custom message validation error:
'v3Schema.safeParse is not a function'
2026-01-23 00:44:12 +01:00
Sam Morrow a236b66465 chore: update conformance action to v2.0.1 with transport fix 2026-01-23 00:44:12 +01:00
Sam Morrow 2c2613c436 ci: update to mcp-conformance-action@v2.0.0 2026-01-23 00:44:12 +01:00
Sam Morrow bd541e3b0c chore: update mcp-conformance-action to v1.4.6
Uses named pipes for reliable server startup detection instead of
a blind sleep, fixing intermittent failures on slow startup.
2026-01-23 00:44:12 +01:00
Sam Morrow 5ab8874708 chore: update mcp-conformance-action to v1.4.4
Removes stderr log capture entirely for cleaner output and smaller artifacts.
2026-01-23 00:44:12 +01:00
Sam Morrow aec726bd7b chore: update mcp-conformance-action to v1.4.3
Removes embedded JSON schemas from report to stay under GitHub's 1MB
step summary limit. Full data is still available in the artifact.
2026-01-23 00:44:12 +01:00
Sam Morrow d074f7fbee chore: update mcp-conformance-action to v1.4.2
Fixes step summary size limit issue by excluding full stderr logs from
the markdown report. Logs are still available in the uploaded artifact.
2026-01-23 00:44:12 +01:00
Sam Morrow 148d51fcb2 chore: update mcp-conformance-action to v1.4.1 2026-01-23 00:44:12 +01:00
Sam Morrow 6f2f155002 chore: use immutable semver tag v1.4.0 2026-01-23 00:44:12 +01:00
Sam Morrow fbfc0259c4 fix: update action SHA to include stderr logging 2026-01-23 00:44:12 +01:00
Sam Morrow 21eff0b761 fix: update action SHA to include subshell fix 2026-01-23 00:44:12 +01:00
Sam Morrow c09815f468 fix: address review feedback
- Use checkout@v6 for consistency with other workflows
- Pin mcp-conformance-action to SHA for security
2026-01-23 00:44:12 +01:00
Sam Morrow a70165b2a4 fix: use correct action input names 2026-01-23 00:44:12 +01:00
Sam Morrow 5fd65a25ae ci: use mcp-conformance-action for conformance tests
Replace custom script/conformance-test with the reusable
mcp-conformance-action GitHub Action. This provides:

- Standardized MCP conformance testing across all MCP servers
- Automatic comparison between PR branch and merge-base
- Support for multiple configurations with different flags
- Custom message support for dynamic toolset testing
- Detailed conformance reports with timing comparisons
- Artifact upload for test results

All 16 original test configurations are preserved including
the dynamic tool call tests for toolset management.

Action: https://github.com/marketplace/actions/mcp-conformance-test
Related: #1826
2026-01-23 00:44:12 +01:00
Sam Morrow 5e5ff27486 Address PR review feedback
- Extract dual-fetch logic into listProjectsFromBothOwnerTypes helper
- Rename addProjectItemWithResolution to addProjectItem (old function removed)
- Add GraphQL test coverage for add_project_item using githubv4mock
- Tests cover both org/issue and user/pull_request success paths
2026-01-22 23:27:21 +01:00
copilot-swe-agent[bot] eaaf1ea833 Update consolidated projects tools: make owner_type optional and fix add_project_item
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>

Fix tests and update toolsnaps for consolidated projects tools

Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
2026-01-22 23:27:21 +01:00
Matt Holloway 238b143bf6 initial OSS insiders docs (#1857) 2026-01-22 12:51:23 +00:00
JoannaaKL 64752fd082 Update README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-20 11:23:50 +01:00
JoannaaKL dbf983ed15 Add -t option to docker run command 2026-01-20 11:23:50 +01:00
Sam Morrow fc079ee498 Build full package in Dockerfile to include all commands (#1844)
* Pin go-licenses to v2.0.1 for reproducible builds

Fixes code scanning alerts #10 and #11 by removing the @latest
version for local development and using the pinned v2.0.1 version
consistently across all environments.

This ensures deterministic builds and addresses the CWE-494
'Download of Code Without Integrity Check' security concern.

* Build full package in Dockerfile to include all commands
2026-01-20 09:36:17 +01:00
JoannaaKL e81f120c1e Add tool search CLI (#1839)
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
Publish to MCP Registry / publish (push) Has been cancelled
* 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>
v0.29.0
2026-01-19 15:59:40 +01:00
dependabot[bot] 950b1ebaef 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](https://github.com/go-viper/mapstructure/compare/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>
2026-01-19 14:08:30 +01:00
JoannaaKL 7c053f1acd 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>
2026-01-16 14:51:15 +01:00
Sam Morrow a663a6b1f8 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.
2026-01-16 11:37:26 +01:00
Sam Morrow f1d33d51f6 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.
2026-01-16 11:37:26 +01:00
Sam Morrow d3ff0a2d07 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
2026-01-16 11:37:26 +01:00
Sam Morrow 92d8d51f08 fix: remove tool name reference from pending note message 2026-01-16 11:37:26 +01:00
Sam Morrow bece2b54cc 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.
2026-01-16 11:37:26 +01:00
Sam Morrow 09adfc71ba 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
2026-01-16 11:37:26 +01:00
Tony Truong 3af1129c6b 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
2026-01-16 11:22:39 +01:00
copilot-swe-agent[bot] ccf519177e 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>
2026-01-16 11:16:11 +01:00
copilot-swe-agent[bot] d88eb83a4f 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>
2026-01-15 18:09:34 +01:00
Tommaso Moro 19beb33c3f 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>
2026-01-15 17:37:06 +01:00
copilot-swe-agent[bot] 3ea9bfc790 Add test for struct field ordering in toolsnaps
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
2026-01-15 17:33:22 +01:00
copilot-swe-agent[bot] 0bf791a4ce Regenerate toolsnaps with deterministic sorting
Co-authored-by: SamMorrowDrums <4811358+SamMorrowDrums@users.noreply.github.com>
2026-01-15 17:33:22 +01:00
copilot-swe-agent[bot] 87a1110c15 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>
2026-01-15 16:15:39 +01:00
Oleksandr Redko 31b541ea08 chore: remove binary files 2026-01-12 19:59:21 +01:00