GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Publish to MCP Registry / publish (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
* add enabledTools to StdioServerConfig
* add EnabledTools to MCPServerConfig, and logic to bypass toolset config if present
* add logic to register specific tools
* update readme
* Update to be consistent with: https://docs.google.com/document/d/1tOOBJ4y9xY61QVrO18ymuVt4SO9nV-z2B4ckaL2f9IU/edit?tab=t.0#heading=h.ffto4e5dwzlf
specifically
- allow for --tools and dynamic toolset mode together
- allow for --tools and --toolsets together
* go mod tidy
* update
* clean up comment
* fix
* fix
* updte
* update
* clean up
* 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>
* Add instruction generation for enabled toolsets and corresponding tests
* Refactor instruction generation to always include base and context management instructions
* Refactor base instruction for clarity and adjust context management instruction formatting
* Simplify changes for now
* Remove unused toolset instructions and simplify test cases for clarity
* Add test cases for issues, notifications, and discussions toolsets in instruction generation
* Update base instruction and test expectations for clarity on tool selection and context management
* Add support for disabling instructions via environment variable
* Clarify PR review workflow instruction for consistency
* Apply suggestions from code review
Co-authored-by: Ksenia Bobrova <almaleksia@github.com>
* Refactor instruction generation and testing for clarity and consistency
---------
Co-authored-by: Ksenia Bobrova <almaleksia@github.com>
* 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>
- Adjust some logs to use structured outputs
- Set stdioserver log prefix as const
- Do not export test func removeTimeAttr
Signed-off-by: Bailey Hayes <behayes2@gmail.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: JoannaaKL <joannaakl@github.com>
* add context toolset and adjust readme
* move resources to a toolset
* add resource registration as a toolset concern
* add a note about broadening of toolsets
* Apply suggestion from @SamMorrowDrums
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.