Commit Graph

52 Commits

Author SHA1 Message Date
JoannaaKL 2e5418093f Add lockdown mode to filter issue (#1371)
* Add lockdown mode to filter issue

* Update flag name

* Update pkg/lockdown/lockdown.go

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

* Merge two graphql queries into one

* Don't use Issue.Repository

* Add function signature

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-10 17:01:21 +01:00
Natalie Dunbar e26cf427ef Add Repository Tree Navigation Tool (#1164)
* add repo nav tool

* comment responses

* move into git.go

* fix documentation

* Update pkg/github/git.go

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

* Fix undefined variable error in GetRepositoryTree

* Update git.go to use github.com/google/go-github/v77 for consistency with main branch

---------

Co-authored-by: Adam Holt <omgitsads@github.com>
2025-11-10 10:29:13 -05:00
Jonathan cf0e05e300 Update to google/go-github@v77 (#1357)
* update to google/go-github@v77

* licences update from required CI build

* fixes licences

* fixes possible nil reference

* refresh licences due to recent conflicts

---------

Co-authored-by: Roberto Nacu <kerobbi@github.com>
2025-11-07 08:06:27 -08:00
Jonathan 6f5040734a Updates github-mcp-server to go-github/v76 (#1289)
* updates github-mcp-server to go-github/v76

* updates license files

* refactors ListProjects to make use of
google/go-github ProjectsService

* refactors GetProject to make use of google/go-github ProjectsService

* declaring commit without a pointer

* cleanup additional commit pointer

---------

Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
2025-10-27 13:53:53 +01:00
pinotelio 11c3d709c2 Fix environment variable mapping for read-only mode (#1067)
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
Build and Test Go Project / build (ubuntu-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
Fix environment variable mapping for read-only mode configuration

Add SetEnvKeyReplacer to viper configuration to properly map environment
variables with underscores to flag names with dashes. This enables the
documented GITHUB_READ_ONLY=1 environment variable to work correctly.

Without this fix, viper was looking for GITHUB_READ-ONLY (with dash) but
the documentation and standard convention use GITHUB_READ_ONLY (with
underscore).

Fixes issue where read-only mode was not being activated when using
GITHUB_READ_ONLY=1 in Docker containers.
2025-10-20 13:29:34 +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
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
Matt Holloway 2621dbefd9 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>
2025-08-19 14:02:16 +01:00
Tommaso Moro 521d5e9258 Bump go-github to v74 (#826)
* update all imports to use v74

* go mod tidy

* update third party licenses

* rename

* autogen licenses
2025-08-06 22:11:50 +01:00
Bupal Chowdary 74964520cf 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>
2025-07-21 12:39:36 +01:00
bitsark a031e21503 fix: make mcpcurl support "integer" type (#688)
- FYI:https://json-schema.org/understanding-json-schema/reference/numeric#integer
2025-07-21 10:20:32 +01:00
Martin Høst Normark be91795fd3 Bump go-github to v73.0.0 (#597)
* Bump go-github to v73.0.0

* Clean up go.mod and update licenses

* Updated remaining imports to use github package v73 instead of v72

---------

Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
Co-authored-by: tommaso-moro <tommaso-moro@github.com>
2025-07-15 15:21:24 +01:00
JoannaaKL 5904a0365e Fix linting flow (#614)
* Add issues type filter

* Add e2e test

* Update e2e/e2e_test.go

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

* Add lint script and update golangci config

* Add lint script

* Install if not installed

* Pass lint config

* Use action and rename workflow

* Back to reparate config

* Migrate config to v2

* Update config

* Lint code

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-30 15:14:45 +02:00
Sam Morrow e9c8b40724 update documentation, add script and workflow 2025-06-27 17:00:30 +02:00
JoannaaKL 96f0173c94 Fix linter error 2025-06-26 15:45:27 +02:00
JoannaaKL ecc57ffec6 Update main.go 2025-06-26 15:45:27 +02:00
JoannaaKL 76535ee2b6 Bind 2025-06-26 15:45:27 +02:00
JoannaaKL 9e1d401b86 Remove unnecessary or 2025-06-26 15:45:27 +02:00
JoannaaKL aaaff4ff6c Add underscore variant 2025-06-26 15:45:27 +02:00
dgiacomo 82fe310cca Change reference from Anthropic to Github in README.md
Noticed README for mcpurl referenced Anthropic's MCP Server when I think intent is to reference Github's - probably some copy pasta origin
2025-06-18 09:07:38 +02:00
Pranav RK 205b619e6b feat: upgrade golangci-lint to v2 (#386)
Co-authored-by: William Martin <williammartin@github.com>
2025-05-12 11:57:27 +02:00
Bill Wilder 2d6e3dd282 Change code fence to neutral ```console
When ```bash is used for a code fence, bash keywords such as "for" and "in" get rendered with syntax highlighting. Switching to ```console avoids this distraction.
2025-05-09 20:56:41 +02:00
William Martin afc7a93b3d Extract ghmcp internal package
This commit cleanly separates config parsing, stdio server execution and
mcp server construction. Aside from significant clarity improvements, it
allows for direct construction of the mcp server in e2e tests to allow
for breakpoint debugging.
2025-05-07 16:13:22 +02:00
William Martin f9427ab04e Ensure toolsets are configurable via env var 2025-04-25 14:44:49 +02:00
Sam Morrow b72a591ce5 chore: use tabs not spaces 2025-04-15 14:33:39 +02:00
Sam Morrow 7eff904605 chore: improve --version command 2025-04-15 14:33:39 +02:00
Joe Ton ea19581ef0 refactor: improve version output using SetVersionTemplate 2025-04-15 14:33:39 +02:00
Sam Morrow ff3036d596 feat: partition tools by product/feature 2025-04-15 01:11:53 +02:00
Simon Danielsson bbba3bb7b0 feat: pretty-print JSONL text responses in mcpcurl (#239)
* Pretty-print jsonl text responses

* Remove else in favour of continue

---------

Co-authored-by: danielssonsimon <danielsson.simon@bcg.com>
2025-04-12 15:08:14 +02:00
Sam Morrow 9dacf70b6e chore: extend user agent 2025-04-12 12:24:20 +02:00
Sam Morrow 3ec8699deb chore: groundwork for multi-user to server 2025-04-10 01:59:03 +02:00
Ariel Deitcher 936b24c4c3 remove pretty print json flag (#179) 2025-04-08 08:19:42 -07:00
Yuki Ito 973fb5d5c8 chore: Remove unnecessary trailing periods from descriptions (#170) 2025-04-08 07:23:11 +02:00
Sam Morrow 7ab5d968e0 chore: pass version through to server
Unit Tests / build (ubuntu-latest) (push) Has been cancelled
Unit Tests / build (windows-latest) (push) Has been cancelled
GoReleaser Release / release (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
Docker / build (push) Has been cancelled
Unit Tests / build (macos-latest) (push) Has been cancelled
Lint / lint (push) Has been cancelled
2025-04-07 17:56:44 +02:00
Matt Metzger c77ea94c02 Add support for retrieving GitHub Issue Comments (#106)
* Add support for retrieving GitHub Issue Comments

Add new tool 'get_issue_comments' that allows fetching comments associated
with GitHub issues. This complements the existing issue retrieval functionality
and follows the same patterns as the pull request comments implementation.

The implementation includes:
- New getIssueComments function in pkg/github/issues.go
- Tool registration in server.go
- Comprehensive test coverage in issues_test.go

* Support pagination for get_issue_comments

---------

Co-authored-by: Javier Uruen Val <juruen@github.com>
2025-04-07 16:11:00 +02:00
Ariel Deitcher 270bbf7ad4 pretty print json (#114) 2025-04-04 17:59:15 -07:00
William Martin 6f7458ae3c Conform list tools
License Check / license-check (push) Has been cancelled
Docker / build (push) Has been cancelled
Unit Tests / build (macos-latest) (push) Has been cancelled
Unit Tests / build (ubuntu-latest) (push) Has been cancelled
Unit Tests / build (windows-latest) (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
Lint / lint (push) Has been cancelled
2025-04-04 15:51:50 +02:00
Sam Morrow 559b3ff1b5 chore: update deps (#76) 2025-04-03 14:54:36 +02:00
Sam Morrow 73ce058d0b chore: go releaser (#71)
* add goreleaser and associated workflows
2025-04-03 12:10:33 +02:00
Ariel Deitcher 84ec566dd8 set user agent for client requests (#61) 2025-04-01 07:48:32 -07:00
Javier Uruen Val 92bceb5fa5 linter 2025-03-26 11:03:52 +01:00
Sam Morrow b320e51053 clean up and add readme 2025-03-24 17:49:10 +01:00
Sam Morrow b3781a251d take env var and use the With rather than assignment 2025-03-24 17:49:10 +01:00
Sam Morrow eb6c7f5537 rudimentary enterprise support 2025-03-24 17:49:10 +01:00
Sam Morrow 3f7d5b0b8a feat: read-only flag 2025-03-20 18:49:46 +01:00
Sam Morrow dd46f8a837 add a framework for translations 2025-03-20 18:33:30 +01:00
Javier Uruen Val 4561355a65 add instructions on how to test the server with VS Code 2025-03-18 09:39:40 +01:00
Javier Uruen Val 6d63777956 add iologging for debugging purposes 2025-03-17 13:49:32 +01:00
Javier Uruen Val a2e662abb9 fix issue with log-file arg 2025-03-14 19:52:09 +01:00
Sam Morrow 02ef88d8f5 Update main.go 2025-03-13 15:44:04 +01:00