Commit Graph

145 Commits

Author SHA1 Message Date
Vidit Ostwal dc5381078a Added get gist tool (#1105)
* Added get gist tool

* adjust prompt

* update readme (autogen)

---------

Co-authored-by: tommaso-moro <tommaso-moro@github.com>
2025-10-30 10:47:01 +00:00
JoannaaKL 0b65b1be52 Update description (#1319)
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
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
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Publish to MCP Registry / publish (push) Has been cancelled
2025-10-27 16:21:50 +01:00
Tom Elliott 70cb7375e5 projects: update fields and prompt (#1292)
* update fields and prompt

* update snapshots

* update docs

* pr feedback

* update snapshots

* update docs
2025-10-24 10:47:13 +02:00
Tom Elliott af2e93b846 projects: add item field support (#1282)
* add fields

* generate docs

* pr feedback

---------

Co-authored-by: Tom Elliott <tmelliottjr@lcjr0246td.lan>
2025-10-23 15:32:00 +02:00
Ksenia Bobrova 3ba8d4a122 Issues consolidation (#1211)
* Issues consolidation

* Issues consolidation

* Clarify get_review_comments description

* Add get_comments method

* Formatting fixes

* Clarify tool description

* Clarify tool descriptions
2025-10-23 13:27:07 +02:00
Tony Truong 66fabb7a8d Adding default toolset as configuration (#1229)
* add toolset default to make configuration easier

* fix readme

* adding transformer to cleanly handle special toolsets

* cleaning code

* fixing cli message

* remove duplicated test

* Update internal/ghmcp/server.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update internal/ghmcp/server_test.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* adding error message for invalid toolsets

* fix merge conflict

* add better formatting

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-15 18:20:14 +02:00
Lulu 7b4b292ddd docs: New "GitHub Support Docs Search" tool (#1225)
* docs: add github_support_docs_search to REMOTE server

* add copilot_spaces

* fix typos

* Add support tool to remote toolsets table
2025-10-15 14:54:49 +01:00
Adam Holt 5f74b5338f Update readme for remote only tools (#1227)
* Add additional toolsets in remote mcp

* Add copilot

* Fix urls

* Move copilot and spaces toolsets to remote-only section

---------

Co-authored-by: LuluBeatson <lulubeatson@github.com>
2025-10-15 14:44:27 +01:00
Tony Truong 0188cc0041 restructure readme for better ghes ghec visibility (#1210)
* restructure readme for better ghes ghec visibility

* adding readme
2025-10-13 16:35:04 +02:00
Ksenia Bobrova e5522fca31 Consolidate pull request review tools (#1192)
* Consolidate pull request review tools

* Prompt tweaks + deleting snap

* Server instructions change

* Add enums

* Remove excessive mentions of event parameter

* Doc update
2025-10-10 16:56:01 +02:00
Tony Truong f9343e62fd rename tooling (#1198)
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
License Check / license-check (push) Has been cancelled
* rename tooling

* fix double tool
2025-10-09 18:28:09 +02:00
JoannaaKL 5c61abeb31 Add update project item tool (#1194)
* Add update project item tool

* Update docs

* Add tests and tool snaps

* Remove unnecessary comments

* Formatting and fixes

* Extract error messages to const

* Fix json tag

* Rename field

* Update params

* Update test

* Update tool example
2025-10-09 17:44:55 +02:00
Tony Truong bbfc44c552 adding labels tools (#1193)
* adding labels tools

* fixing ci

* update toolsnap

* fixing lint

* changing comment

* fix title
2025-10-09 11:24:18 +02:00
Roberto Nacu 16b43c9d44 Add sort and order parameters to search_repositories tool (#1191)
* add sort and order params

* test adding server instructions for sorting

* improve server instructions

* reorder
2025-10-09 10:11:12 +01:00
Ksenia Bobrova d0d4b0e5cb Consolidating pull requests get tools (#1172)
* Consolidating tools draft

* Consolidate pullrequest tools

* Prompt tweaks

* Fixes
2025-10-07 11:05:22 +02:00
Tony Truong bf0d62e4a6 Adding default toolset grouping (#1159)
* adding default toolset group, splitting up stargazers from repos

* adding structs for toolset group metadata

* update readme

* refactor the readme

* fix lint

---------

Co-authored-by: Ksenia Bobrova <almaleksia@github.com>
2025-10-06 17:07:25 +02:00
JoannaaKL 6d01897ccd Remove update_project_item tool (#1167)
* Remove update_project_item tool

* Lint
2025-10-01 12:13:26 +02:00
JoannaaKL 6793b9d376 Add tools to add, update and delete project items (#1152)
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
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Publish to MCP Registry / publish (push) Has been cancelled
* Add add_project_item tool

* Add tools to update and delete project items

* Update pkg/github/projects.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/projects.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add tests

* Lint the code

* Fix req params

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-30 10:08:15 +02:00
JoannaaKL 088560113c Add tool for project fields and items (#1145)
* Add get project fields tool

* Data types

* Docs

* Update projectNumber's type

* Add list_project_items tool

* Add get_project_item tool

* Return minimal project

* Remove unused per_page
2025-09-29 15:43:00 +02:00
JoannaaKL abf7c478ac Add tools for Projects V2 (#1114)
* Add get_project tool

* Remove pagination for now

* Fix url formatting

* Minor tweaks

* Add list project fields tool

* Wording
2025-09-26 11:36:35 +02:00
Ksenia Bobrova 2efa8e8a1d Add Copilot Spaces toolset to readme (#1135) 2025-09-25 12:00:31 +02:00
JoannaaKL 23630b3744 Add ListProjects tool (#1113)
* Bump go-viper/mapstructure

* Update github.com/go-viper/mapstructure/v2 version in licenses

* Add tool to list projects

* Fix ordering
2025-09-22 16:48:51 +02:00
Copilot 010cf9b33a Add starred repository support to GitHub MCP server (#1078)
License Check / license-check (push) Has been cancelled
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
* Initial plan

* Initial exploration and planning for starred repository support

Co-authored-by: tonytrg <40869903+tonytrg@users.noreply.github.com>

* Implement starred repository functionality with comprehensive tests

- Add ListStarredRepositories tool for listing starred repos
- Add StarRepository tool for starring repositories
- Add UnstarRepository tool for unstarring repositories
- Update MinimalRepository struct with StarredAt field
- Add comprehensive test coverage for all new functionality
- Register new tools in the repos toolset

Co-authored-by: tonytrg <40869903+tonytrg@users.noreply.github.com>

* Update README documentation with starred repository tools

- Add list_starred_repositories tool documentation
- Add star_repository tool documentation
- Add unstar_repository tool documentation
- Include comprehensive parameter descriptions for all new tools

Co-authored-by: tonytrg <40869903+tonytrg@users.noreply.github.com>

* Add starred repository support to GitHub MCP server

Co-authored-by: tonytrg <40869903+tonytrg@users.noreply.github.com>

* remove starredat from minimal view

* update descriptions

* remove bin

* dont commit the binary

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: tonytrg <40869903+tonytrg@users.noreply.github.com>
Co-authored-by: tonytrg <tonytrg@github.com>
2025-09-12 16:11:15 +02:00
Roberto Nacu b6486a3817 Add specifying state change reason to update_issue tool (#1073)
* add state_reason param

* add close as duplicate functionality

* refactor and improve tests

* fix state reason validation logic and update tests

* move state and state reason handling to gql

* fix marshal failures

* address latest feedback
2025-09-12 16:04:00 +02:00
Tony Truong 9db2e17204 Updating tool get_pull_request_comments -> get_pull_request_review_comments (#1062)
* update get_pull_request_comments to get_pull_request_review_comments to signify difference

* fix remaining old references

* cleanup dangling tool snap
2025-09-09 13:26:22 +02:00
Dimitrios Philliou 3dc912c10c Update README.md (#1044)
Removing public preview note.

Co-authored-by: Iryna Kulakova <52420926+IrynaKulakova@users.noreply.github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>
2025-09-04 17:21:42 +02:00
Ioannis Papapanagiotou c345e9b0b0 docs: Add Google Gemini CLI installation guide and integration (#757)
* docs: Add Google Gemini CLI installation guide and integration

- Add comprehensive installation guide for Google Gemini CLI
- Include Docker and binary configuration options
- Add authentication setup for Gemini API and Vertex AI
- Update main README.md to include Gemini CLI in installation guides
- Update installation guides index with Gemini CLI entry and support matrix
- Follow established documentation patterns and security best practices

* Fix Gemini CLI command syntax and add remote server method

- Replace all 'gemini-cli' commands with correct 'gemini' syntax
- Fix verification commands to use '/mcp list' and '/tools' prompts
- Add httpUrl remote server method as primary configuration option
- Update config file paths from settings.json to config.json
- Correct npx installation command syntax
- Add link to official Gemini CLI documentation

Addresses feedback from soisyourface in PR review.

* Emphasize official Gemini CLI documentation link

Reduce detailed installation steps and direct users to official docs for
up-to-date instructions, addressing reviewer feedback about maintainability.

* Fix Gemini CLI configuration file name: config.json -> settings.json

The correct configuration file for Gemini CLI is settings.json, not config.json.
This applies to both global (~/.gemini/settings.json) and project-specific
(.gemini/settings.json) configurations as confirmed by official documentation.

* Remove Gemini CLI installation and authentication sections

Removed lines 11-41 containing Gemini CLI installation commands and
authentication setup instructions.

* Add Podman as Docker alternative in prerequisites

Added Podman as container engine option alongside Docker.

* Remove references to deprecated npm package

* Add comprehensive ~/.gemini/.env file example

* Fix authorization header to use literal token placeholder

Environment variable substitution in headers is not yet supported
by Gemini CLI (see google-gemini/gemini-cli#5282).

* Add issue types (#869)

* feat: add type to issues

* test: add `type` test for create and update issues

* Generate docs and toolsnaps

* Update pkg/github/issues.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Use github ptr

---------

Co-authored-by: Pranav RK <pranavrk7@gmail.com>
Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>
Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Enable Dependabot (#654)

* Create/Update dependabot.yaml

* Apply suggestion from @Copilot

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Bump SDK version to 0.36.0 (#863)

* Use server.ServerResourceTemplate and server.ServerPrompt wrappers (#886)

* Update "Close inactive issues" workflow to close issues after 180 days of inactivity (#909)

* update PR_DAYS_BEFORE_STALE

* update to mark as stale after 60 days

* Update Claude MCP install guide after testing (#706)

* Revise Claude installation guide

- Verified Claude Code installation steps
- Identified and documented issues with Claude Desktop setup
- Updated installation documentation based on testing

* Revise instructions for opening Claude Code

Updated recommendations for opening Claude Code.

* Update docs/installation-guides/install-claude.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update docs/installation-guides/install-claude.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update installation guide for Claude setup

Added installation option for using Claude Code using a release binary.

* Change section title for Go Binary installation

Updated section title for clarity regarding installation without Docker.

* Close double quote in bash command

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>

* Add actions job log buffer and profiler (#866)

* add sliding window for actions logs

* refactor: fix sliding

* remove trim content

* only use up to 1mb of memory for logs

* update to tail lines in second pass

* add better memory usage calculation

* increase window size to 5MB

* update test

* update vers

* undo vers change

* add incremental memory tracking

* use ring buffer

* remove unused ctx param

* remove manual GC clear

* fix cca feedback

* extract ring buffer logic to new package

* handle log content processing errors and use correct param for maxjobloglines

* fix tailing

* account for if tailLines exceeds window size

* add profiling thats reusable

* remove profiler testing

* refactor profiler: introduce safeMemoryDelta for accurate memory delta calculations

* linter fixes

* Update pkg/buffer/buffer.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* use flag for maxJobLogLines

* add param passing for context window size

* refactor: rename contextWindowSize to contentWindowSize for consistency

* fix: use tailLines if bigger but only if <= 5000

* fix: limit tailLines to a maximum of 500 for log content download

* Update cmd/github-mcp-server/main.go

Co-authored-by: Adam Holt <omgitsads@github.com>

* Update cmd/github-mcp-server/main.go

Co-authored-by: Adam Holt <omgitsads@github.com>

* move profiler to internal/

* update actions test with new profiler location

* fix: adjust buffer size limits

* make line buffer 1028kb

* fix mod path

* change test to use same buffer size as normal use

* improve test for non-sliding window implementation to not count empty lines

* make test memory measurement more accurate

* remove impossible conditional

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>

* Add get_release_by_tag tool (#938)

* add get_release_by_tag tool

* add tool

* add tests

* autogen

* remove comment

* docs(readme): Update readme to point to correct installation guides index (#892)

* docs(readme): Update readme to point to correct installation guides index

* feat(contributors): add list_repository_contributors tool

* Revert "feat(contributors): add list_repository_contributors tool"

This reverts commit ece480ea6f99f7131a6faa2d12fb2f62d3e53332.

---------

Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>

* Add Global Security Advisories Toolset (#919)

* Repository security advisories (#925)

* Add support for listing repo level security advisories

* Add support for listing repo security advisories at the org level

* Update Cursor installation link (#940)

* use new link

* update local install link

* Change role from "system" to "user" in prompt messages for `AssignCodingAgentPrompt` and `IssueToFixWorkflowPrompt`. Role "system" is not allowed by Claude Code in MCP provided prompt (allowed only role "user" and "assistant") (#941)

Co-authored-by: 0xGosu <0xGosu@gmail.com>

* Local MCP is supported

* Refactor Gemini CLI install guide

* Remove Bearer from Authorization header

* Add reference to main README for latest config

* Bearer needed for headers, add references

* Add minimal response to CRUD tools, `repositories` and `search` toolsets (#988)

* add comprehensive minimal response where appropriate

* remove unneeded comments

* remove incorrect diff param

* update docs

* rm comment

* Update pkg/github/repositories.go

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>

* update toolsnaps and docs

* change minimal_output to use new OptionalBoolParamWithDefault

* Update pkg/github/repositories.go

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>

* refactor minimal conversion funcs to minimal_types.go

* consolidate response structs and remove unneeded message field

* consolidate response further

* remove CloneURL field

* Update pkg/github/repositories.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/server.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix undefined

* change incorrect comment

* remove old err var declaration

* Update pkg/github/repositories.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix syntax issue

* update toolsnaps

---------

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* initial org repo create support (#1023)

---------

Co-authored-by: JoannaaKL <joannaakl@github.com>
Co-authored-by: Pranav RK <pranavrk7@gmail.com>
Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>
Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Zack Koppert <zkoppert@github.com>
Co-authored-by: Ksenia Bobrova <almaleksia@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
Co-authored-by: Dimitrios Philliou <d1m1tr10s@github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>
Co-authored-by: Rebecca Biju <113070179+beccccaboo@users.noreply.github.com>
Co-authored-by: Jurre <jurre@github.com>
Co-authored-by: 0xGosu <0xGosu@gmail.com>
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
2025-09-04 10:00:31 +01:00
Matt Holloway 09deac45d4 initial org repo create support (#1023)
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
License Check / license-check (push) Has been cancelled
2025-09-02 11:30:13 +01:00
Matt Holloway 358a415081 Add minimal response to CRUD tools, repositories and search toolsets (#988)
* add comprehensive minimal response where appropriate

* remove unneeded comments

* remove incorrect diff param

* update docs

* rm comment

* Update pkg/github/repositories.go

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>

* update toolsnaps and docs

* change minimal_output to use new OptionalBoolParamWithDefault

* Update pkg/github/repositories.go

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>

* refactor minimal conversion funcs to minimal_types.go

* consolidate response structs and remove unneeded message field

* consolidate response further

* remove CloneURL field

* Update pkg/github/repositories.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/server.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix undefined

* change incorrect comment

* remove old err var declaration

* Update pkg/github/repositories.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix syntax issue

* update toolsnaps

---------

Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-09-01 18:13:36 +01:00
Jurre d03072f1a9 Repository security advisories (#925)
* Add support for listing repo level security advisories

* Add support for listing repo security advisories at the org level
2025-08-21 15:20:20 +02:00
Jurre 47040f43ef Add Global Security Advisories Toolset (#919) 2025-08-21 12:48:46 +02:00
Rebecca Biju b189531635 docs(readme): Update readme to point to correct installation guides index (#892)
* docs(readme): Update readme to point to correct installation guides index

* feat(contributors): add list_repository_contributors tool

* Revert "feat(contributors): add list_repository_contributors tool"

This reverts commit ece480ea6f99f7131a6faa2d12fb2f62d3e53332.

---------

Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
2025-08-21 11:24:00 +01:00
Tommaso Moro 73dcb46dd8 Add get_release_by_tag tool (#938)
* add get_release_by_tag tool

* add tool

* add tests

* autogen

* remove comment
2025-08-21 09:57:46 +01:00
JoannaaKL afe8ddb8ca Add issue types (#869)
* feat: add type to issues

* test: add `type` test for create and update issues

* Generate docs and toolsnaps

* Update pkg/github/issues.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Use github ptr

---------

Co-authored-by: Pranav RK <pranavrk7@gmail.com>
Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>
Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-14 07:25:29 +02:00
Matt Holloway 1832210139 Add get_teams and get_team_members tools (#834)
* add team tool with tests

* add to tools

* add toolsnaps and docs

* Update pkg/github/context_tools.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* rewrite to allow providing user

* rRename get_my_teams to get_teams and update documentation and tests

* remove old snap

* rm old comments

* update test teams to numbered examples

* Update descriptions for allow finding teams of other users

* return empty result over custom empty error

* fix test expectations for no teams found

* flatten teams response to not include Nodes

* update description to include clarification about teams you are a member of

* fix typo in tool desc

* updated description to be more generic for accecss note

* amended error handling

* Update pkg/github/context_tools.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* add additional tool to get team members

* update tool desc for get_team_members to include warning about auth

* added new scope info

* refactor to parse params individually

* GetTeams - rename "login" field to "org"

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
2025-08-13 13:41:04 +01:00
Alon Kenneth 0e7a25ea5a Add List issue types tool (#616)
* add list issue types action

* lint

* remove log

* update docs
2025-08-12 14:01:52 +02:00
JoannaaKL 6f06cba57f List releases (#862)
* docs: add required GitHub token permissions per action (#128)

* Feat: Add support for GitHub Releases (list and latest) tools

* Update repositories.go

Update params

* Update README.md

Add only new tool to the readme

* Revise GitHub PAT instructions and permissions section

* Readme formatting

---------

Co-authored-by: Arya Soni <aryasoni98@gmail.com>
Co-authored-by: Arya Soni <18515597+aryasoni98@users.noreply.github.com>
2025-08-12 12:58:21 +02:00
Babbage 8aa3379fea Migrate list_issues tool from REST to GraphQL API (#833)
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
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
* initial changes

* Further advances on list_issues tool to use GRPC

* Updating pagination for Graphql ListIssues

* Sorting data structures & returning mapped Issue

* Adding dynamic label queries

* Adding dynamic state queries for list_issues

* Add optional since filter, to get issues based on last update to issue

* Move ListIssues test to graphql format & removal of temp file

* Update documentation and fix linter issues

* Removal of redundant code, and increase limit on label return

* Fixing context for status to allow for better interactions

* Update tool snaps with tool description

* Update docs for final changes to context
2025-08-08 15:26:48 +01:00
Kirsten Laskoski d65d1d5455 fix: correct descriptions for PR/issue searching (#840)
Fix #839 by updating the descriptions for the `owner` and `repo`
parameters for the `search_issues` and `search_pull_requests` tools to
no longer reference notifications but issues and pull requests,
respectively.
2025-08-08 13:34:04 +01:00
Tommaso Moro 33a63a053d Add support for org-level discussions in list_discussion_categories tool (#819)
* hide implementation detail for org-level queries

* update tests

* autogen

* made tests consistent with other tests
2025-08-05 11:05:45 +01:00
MayorFaj 45e90aedd4 feat: add reviewers parameter to UpdatePullRequest (#285)
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
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
* feat: add reviewers parameter to UpdatePullRequest and update tests

* Update pullrequests.go

* feat: enhance update pull request functionality with reviewers support

* update README to clarify optional reviewers parameter in API documentation- go run ./cmd/github-mcp-server generate-docs

* feat: enhance UpdatePullRequest to return early if no updates or reviewers are provided

* Add updating draft state to `update_pull_request` tool (#774)

* initial impl of pull request draft state update

* appease linter

* update README

* add nosec

* fixed err return type for json marshalling

* add gql test

* Add support for org-level discussions in list_discussions tool (#775)

* make repo optional, and default to .github when not provided. improve tool description

* autogen

* update tests

* small copy paste error fixes

* refactor: streamline UpdatePullRequest logic and enhance test cases for reviewer updates

* refactor: remove redundant draft update tests and streamline UpdatePullRequest logic

* test: add unit tests for updating pull request draft state

* refactor: simplify UpdatePullRequest tests by removing unused mock data

---------

Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
2025-07-31 11:05:38 +01:00
Maximillian Polhill 1c6171b24f Feat: Add initial Gist tools (#340)
* Add initial Gist tools: ListGists, CreateGist

* Add UpdateGist tool

* Add documentation for initial Gist tools

---------

Co-authored-by: Matt Holloway <mattdholloway@github.com>
2025-07-30 15:12:12 +01:00
JoannaaKL 4b64121b97 Updated descriptions for search tools (#737)
* Updated description for search_code

* Update toolsnaps and docs
2025-07-30 13:37:24 +02:00
Tommaso Moro 89e3afdb4b Add support for org-level discussions in list_discussions tool (#775)
License Check / license-check (push) Has been cancelled
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
* make repo optional, and default to .github when not provided. improve tool description

* autogen

* update tests

* small copy paste error fixes
2025-07-29 14:17:03 +01:00
Matt Holloway d5e1f48728 Add updating draft state to update_pull_request tool (#774)
* initial impl of pull request draft state update

* appease linter

* update README

* add nosec

* fixed err return type for json marshalling

* add gql test
2025-07-29 10:58:06 +01:00
JoannaaKL efef8ae27a Changed q to query in search (#740)
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
License Check / license-check (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
Docker / build (push) Has been cancelled
2025-07-24 12:35:35 +02:00
Tommaso Moro a939565160 feat: list_discussions sort by updatedAt & createdAt, return updatedAt and author (#690)
* added updatedAt and Author (aka User) login to query and payload

* added initial support for orderby and direction

* sort by created at instead of updated at by default

* remove unused code

* refactor to map to most suitable query based on user inputs at runtime

* updated readme with new description

* restore original categoryID code, simplify vars management

* quick fix

* update tests to account for recent changes (author login, updated at date)

* use switch statement for better readability

* remove comment

* linting

* refactored logic, simplified switch statement

* linting

* use original queries from discussions list tool for testing

* linting

* remove logging

* Complete merge by re-introducing pagination to ListDiscussions

* fix unit tests

* refactor: less repetitive interface

---------

Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
2025-07-24 11:26:00 +01:00
Martin Høst Normark 60a5391d67 Add tools for sub-issue endpoint (#470)
* Create 'add sub-issue' tool

* Fix hardcoded API host

* Create 'list sub-issues' tool

* Create 'remove sub-issue' tool

* Fix Test_GetIssue mock data - add missing User field

The assertion was already checking User.Login but the mock was incomplete

* Create 'reprioritize sub-issue' tool

* fixes

* use go github pck to add sub-issues

* Update to use go github package

* update description

* update to use go github v73

* lint, docs

* refactor: tests to use go-github-mock

* add toolsnaps

* make RemoveSubIssue use NewGitHubAPIErrorResponse, update docstring

* Always include SHA in get_file_contents responses (#676)

* fix: Add SHA to get_file_contents while preserving MCP behavior (#595)

Enhance get_file_contents to include SHA information without changing
the existing MCP server response format.

Changes:
- Add Contents API call to retrieve SHA before fetching raw content
- Include SHA in resourceURI (repo://owner/repo/sha/{SHA}/contents/path)
- Add SHA to success messages
- Update tests to verify SHA inclusion
- Maintain original behavior: text files return raw text, binaries return base64

This preserves backward compatibility while providing SHA information
for better file versioning support.

Closes #595

* fix: Improve error handling for Contents API response

Ensure response body is properly closed even when an error occurs by moving
the defer statement before the error check. This prevents potential resource
leaks when the Contents API returns an error with a non-nil response.

Changes:
- Move defer respContents.Body.Close() before error checking
- Rename errContents to err for consistency
- Add nil check for respContents before attempting to close body

This follows Go best practices for handling HTTP responses and prevents
potential goroutine/memory leaks.

* revert changes to resource URI

* use GraphQL API to get file SHA

* refactor: mock GQL client instead of getFileSHA function to follow conventions

* lint

* revert GraphQL

---------

Co-authored-by: LuluBeatson <lulubeatson@github.com>

* Reorganize README, add dedicated install guides, include policies and governance info for the github server (#695)

* Refactor README and add host installation guides, governance docs

- Reorganized README for clarity and navigation
- Added dedicated installation guides for Claude, Cursor, Windsurf, JetBrains, and more
- Clarified contribution guidelines and approval criteria
- Added policies and governance documentation

* Update README.md

* Update README with configuration section for remote GitHub MCP Server

* Update MCP access policy description in README

Removing coding agent from the policy note, as the GitHub server is unaffected by this policy

* Update configuration steps for GitHub Copilot in JetBrains IDEs...

...to reflect changes in accessing settings and configuring MCP.

* Update install-other-copilot-ides.md

* Update Eclipse MCP support version and configuration steps...

...for GitHub Copilot plugin in installation guide.

* Update docs/installation-guides/install-cursor.md

* Update docs/installation-guides/install-windsurf.md

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

* Apply suggestion from @tonytrg

---------

Co-authored-by: Tony Truong <tonytrg@github.com>

* fix: shorten long tool name for adding pr review comments (#697)

* shorten tool name

* update function name to match tool name

* adjust wording of descriptions

* Update installation guide for GitHub MCP Server (#699)

* Update installation guide for GitHub MCP Server

Removed reference to GitHub.com in the installation guide. The GitHub server is available to Coding Agent by default, without installation needed.

* Rename section to 'Install in Other MCP Hosts'

Updating title for consistency and adding a link to the "other Copilot IDEs" install guide.

* Revise installation guide for Cursor MCP setup

Updated installation guide for Cursor with steps clarified, remote server installation, and one-click install deeplinks to open Cursor and add the github server to the config file.

* fix: make mcpcurl support "integer" type (#688)

- FYI:https://json-schema.org/understanding-json-schema/reference/numeric#integer

* Added installation instructions for mcpcurl (#719)

* Added installation instructions for mcpcurl

* Update cmd/mcpcurl/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Add pagination support to GraphQL-based tools (#683)

* initial pagination for `ListDiscussions`

* redo category id var cast

* add GraphQL pagination support for discussion comments and categories

* remove pageinfo returns

* fix out ref for linter

* update docs

* move to unified pagination for consensus on params

* update docs

* refactor pagination handling

* update docs

* linter fix

* conv rest to gql params for safe lint

* add nolint

* add error handling for perPage value in ToGraphQLParams

* refactor pagination error handling

* unified params for rest andn graphql and rennamed to be uniform for golang

* add 'after' for pagination

* update docs

* Update pkg/github/discussions.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/discussions.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/discussions_test.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* update default page size const

* reduce default pagination size from 100 to 30 in discussion tests

* update pagination for reverse and total

* update pagination to remove from discussions

* updated README

* improve the `ToGraphQLParams` function

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* shorten param descriptions

* fix: resp nil check in error handling in RemoveSubIssue function

---------

Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: tommaso-moro <tommaso-moro@github.com>
2025-07-22 09:24:46 +01:00
Matt Holloway 7ccc6b6493 Add pagination support to GraphQL-based tools (#683)
* initial pagination for `ListDiscussions`

* redo category id var cast

* add GraphQL pagination support for discussion comments and categories

* remove pageinfo returns

* fix out ref for linter

* update docs

* move to unified pagination for consensus on params

* update docs

* refactor pagination handling

* update docs

* linter fix

* conv rest to gql params for safe lint

* add nolint

* add error handling for perPage value in ToGraphQLParams

* refactor pagination error handling

* unified params for rest andn graphql and rennamed to be uniform for golang

* add 'after' for pagination

* update docs

* Update pkg/github/discussions.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/discussions.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update pkg/github/discussions_test.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* update default page size const

* reduce default pagination size from 100 to 30 in discussion tests

* update pagination for reverse and total

* update pagination to remove from discussions

* updated README

* improve the `ToGraphQLParams` function

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-21 16:31:29 +01:00
Dimitrios Philliou 2e63e81d51 Update installation guide for GitHub MCP Server (#699)
* Update installation guide for GitHub MCP Server

Removed reference to GitHub.com in the installation guide. The GitHub server is available to Coding Agent by default, without installation needed.

* Rename section to 'Install in Other MCP Hosts'

Updating title for consistency and adding a link to the "other Copilot IDEs" install guide.

* Revise installation guide for Cursor MCP setup

Updated installation guide for Cursor with steps clarified, remote server installation, and one-click install deeplinks to open Cursor and add the github server to the config file.
2025-07-19 08:17:24 +01:00