feat: add cookie-based authentication support for enterprise GitLab #101
Merged
zereight merged 24 commits intozereight:mainfrom Jun 16, 2025
Merged
feat: add cookie-based authentication support for enterprise GitLab #101zereight merged 24 commits intozereight:mainfrom
zereight merged 24 commits intozereight:mainfrom
Conversation
- Add GITLAB_AUTH_COOKIE_PATH environment variable support - Handle #HttpOnly_ prefix in cookie files properly - Enable redirect following when cookies are present - Maintain compatibility with existing token-based auth
- Update package name to @mattweg/gitlab-mcp - Bump version to 1.0.63-fork.1 - Add attribution to original author zereight - Add deprecation notice referencing upstream PR zereight#100 - Add repository and homepage URLs for fork
- removed the duplicate GITLAB_AUTH_COOKIE_PATH from README.md
…support - Move cookie header setting outside if/else block to ensure it applies to both old (Private-Token) and new (Bearer) GitLab authentication - Fixes issue where cookies were only set for Bearer token auth - Maintains backward compatibility with existing authentication methods - Enables cookie-based authentication for all GitLab instance types Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH with GitLab instances that require cookie-based authentication.
- Add fallback parsing for macOS cookie format - Handle cookie files with different structure than standard Netscape format - Maintain compatibility with existing Linux cookie parsing - Extract cookie name and value from space-separated format Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH on macOS systems.
- Replace static cookie string with fetch-cookie + tough-cookie - Add proper Netscape cookie format parsing with domain context - Enable automatic cookie handling during OAuth2 redirects - Fixes authentication issues on macOS with enterprise SSO
…nstances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication.
…nstances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication.
d8b335d to
a5f5fdd
Compare
- Add support for Netscape cookie file format with #HttpOnly_ prefix handling - Implement hybrid approach using tough-cookie's parse() for robust cookie parsing - Add automatic session establishment for enterprise GitLab authentication - Support cookie file path via GITLAB_AUTH_COOKIE_PATH environment variable - Integrate with fetch-cookie for automatic redirect handling and session persistence - Ensure compatibility with Midway enterprise authentication flow This enables seamless authentication with enterprise GitLab instances that require cookie-based authentication while maintaining clean, maintainable code using widely-supported packages (tough-cookie + fetch-cookie).
Brings robust cookie-based authentication with hybrid parsing approach using tough-cookie + fetch-cookie for enterprise GitLab instances.
…dency resolution - Fix package name mismatch that prevented npx from installing dependencies - Bump version to 1.0.63-fork.7 - This resolves cookie authentication issues by ensuring fetch-cookie and tough-cookie are properly installed
This feature adds support for cookie-based authentication with GitLab instances by: - Adding a new GITLAB_AUTH_COOKIE_PATH environment variable to specify the path to a Netscape-format cookie file - Implementing a cookie jar parser that handles standard Netscape cookie format - Adding session establishment logic that checks for GitLab session cookies - Ensuring all API requests use the authenticated session This allows the MCP server to authenticate with GitLab instances that use cookie-based authentication, which is particularly useful for instances that require SSO or other authentication methods that don't support personal access tokens.
34d49c9 to
6a0f35a
Compare
Owner
Contributor
|
OMG!! support for enterpise... thanks! |
iwakitakuma33
pushed a commit
that referenced
this pull request
Aug 20, 2025
…101) * feat: add cookie-based authentication support for GitLab instances 🍪 - Add GITLAB_AUTH_COOKIE_PATH environment variable support - Handle #HttpOnly_ prefix in cookie files properly - Enable redirect following when cookies are present - Maintain compatibility with existing token-based auth * chore: prepare fork for npm publishing as @mattweg/gitlab-mcp - Update package name to @mattweg/gitlab-mcp - Bump version to 1.0.63-fork.1 - Add attribution to original author zereight - Add deprecation notice referencing upstream PR #100 - Add repository and homepage URLs for fork * fix: remove duplicate documentation line - removed the duplicate GITLAB_AUTH_COOKIE_PATH from README.md * fix: move cookie header outside conditional block for universal auth support - Move cookie header setting outside if/else block to ensure it applies to both old (Private-Token) and new (Bearer) GitLab authentication - Fixes issue where cookies were only set for Bearer token auth - Maintains backward compatibility with existing authentication methods - Enables cookie-based authentication for all GitLab instance types Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH with GitLab instances that require cookie-based authentication. * 1.0.63 * fix: add support for macOS cookie format in auth cookie parsing 🍪 - Add fallback parsing for macOS cookie format - Handle cookie files with different structure than standard Netscape format - Maintain compatibility with existing Linux cookie parsing - Extract cookie name and value from space-separated format Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH on macOS systems. * 1.0.64 * chore: update version to 1.0.63-fork.3 * fix: implement proper cookie jar authentication for macOS - Replace static cookie string with fetch-cookie + tough-cookie - Add proper Netscape cookie format parsing with domain context - Enable automatic cookie handling during OAuth2 redirects - Fixes authentication issues on macOS with enterprise SSO * chore: update version to 1.0.63-fork.4 * feat: add cookie-based authentication support for enterprise GitLab instances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication. * chore: update to fork version 1.0.63-fork.5 with cookie auth support * feat: add cookie-based authentication support for enterprise GitLab instances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication. * feat: implement robust cookie-based authentication with hybrid parsing - Add support for Netscape cookie file format with #HttpOnly_ prefix handling - Implement hybrid approach using tough-cookie's parse() for robust cookie parsing - Add automatic session establishment for enterprise GitLab authentication - Support cookie file path via GITLAB_AUTH_COOKIE_PATH environment variable - Integrate with fetch-cookie for automatic redirect handling and session persistence - Ensure compatibility with Midway enterprise authentication flow This enables seamless authentication with enterprise GitLab instances that require cookie-based authentication while maintaining clean, maintainable code using widely-supported packages (tough-cookie + fetch-cookie). * chore: bump version to 1.0.63-fork.6 with ultra-clean cookie auth * fix: correct package name to @mattweg/gitlab-mcp for proper npx dependency resolution - Fix package name mismatch that prevented npx from installing dependencies - Bump version to 1.0.63-fork.7 - This resolves cookie authentication issues by ensuring fetch-cookie and tough-cookie are properly installed * Improve cookie authentication with robust session establishment * feat: add cookie-based authentication support This feature adds support for cookie-based authentication with GitLab instances by: - Adding a new GITLAB_AUTH_COOKIE_PATH environment variable to specify the path to a Netscape-format cookie file - Implementing a cookie jar parser that handles standard Netscape cookie format - Adding session establishment logic that checks for GitLab session cookies - Ensuring all API requests use the authenticated session This allows the MCP server to authenticate with GitLab instances that use cookie-based authentication, which is particularly useful for instances that require SSO or other authentication methods that don't support personal access tokens. --------- Co-authored-by: Moon (mattweg's AI assistant) <[email protected]> Co-authored-by: Matt Weg <[email protected]>
iwakitakuma33
pushed a commit
that referenced
this pull request
Aug 20, 2025
…101) * feat: add cookie-based authentication support for GitLab instances 🍪 - Add GITLAB_AUTH_COOKIE_PATH environment variable support - Handle #HttpOnly_ prefix in cookie files properly - Enable redirect following when cookies are present - Maintain compatibility with existing token-based auth * chore: prepare fork for npm publishing as @mattweg/gitlab-mcp - Update package name to @mattweg/gitlab-mcp - Bump version to 1.0.63-fork.1 - Add attribution to original author zereight - Add deprecation notice referencing upstream PR #100 - Add repository and homepage URLs for fork * fix: remove duplicate documentation line - removed the duplicate GITLAB_AUTH_COOKIE_PATH from README.md * fix: move cookie header outside conditional block for universal auth support - Move cookie header setting outside if/else block to ensure it applies to both old (Private-Token) and new (Bearer) GitLab authentication - Fixes issue where cookies were only set for Bearer token auth - Maintains backward compatibility with existing authentication methods - Enables cookie-based authentication for all GitLab instance types Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH with GitLab instances that require cookie-based authentication. * 1.0.63 * fix: add support for macOS cookie format in auth cookie parsing 🍪 - Add fallback parsing for macOS cookie format - Handle cookie files with different structure than standard Netscape format - Maintain compatibility with existing Linux cookie parsing - Extract cookie name and value from space-separated format Resolves authentication failures when using GITLAB_AUTH_COOKIE_PATH on macOS systems. * 1.0.64 * chore: update version to 1.0.63-fork.3 * fix: implement proper cookie jar authentication for macOS - Replace static cookie string with fetch-cookie + tough-cookie - Add proper Netscape cookie format parsing with domain context - Enable automatic cookie handling during OAuth2 redirects - Fixes authentication issues on macOS with enterprise SSO * chore: update version to 1.0.63-fork.4 * feat: add cookie-based authentication support for enterprise GitLab instances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication. * chore: update to fork version 1.0.63-fork.5 with cookie auth support * feat: add cookie-based authentication support for enterprise GitLab instances Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects. - Add GITLAB_AUTH_COOKIE_PATH environment variable - Implement cookie jar with proper domain handling for redirects - Use conditional fetch assignment: cookie-enabled when path configured - Maintains backward compatibility: no cookies = original behavior - Zero changes to existing fetch() calls throughout codebase Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication. * feat: implement robust cookie-based authentication with hybrid parsing - Add support for Netscape cookie file format with #HttpOnly_ prefix handling - Implement hybrid approach using tough-cookie's parse() for robust cookie parsing - Add automatic session establishment for enterprise GitLab authentication - Support cookie file path via GITLAB_AUTH_COOKIE_PATH environment variable - Integrate with fetch-cookie for automatic redirect handling and session persistence - Ensure compatibility with Midway enterprise authentication flow This enables seamless authentication with enterprise GitLab instances that require cookie-based authentication while maintaining clean, maintainable code using widely-supported packages (tough-cookie + fetch-cookie). * chore: bump version to 1.0.63-fork.6 with ultra-clean cookie auth * fix: correct package name to @mattweg/gitlab-mcp for proper npx dependency resolution - Fix package name mismatch that prevented npx from installing dependencies - Bump version to 1.0.63-fork.7 - This resolves cookie authentication issues by ensuring fetch-cookie and tough-cookie are properly installed * Improve cookie authentication with robust session establishment * feat: add cookie-based authentication support This feature adds support for cookie-based authentication with GitLab instances by: - Adding a new GITLAB_AUTH_COOKIE_PATH environment variable to specify the path to a Netscape-format cookie file - Implementing a cookie jar parser that handles standard Netscape cookie format - Adding session establishment logic that checks for GitLab session cookies - Ensuring all API requests use the authenticated session This allows the MCP server to authenticate with GitLab instances that use cookie-based authentication, which is particularly useful for instances that require SSO or other authentication methods that don't support personal access tokens. --------- Co-authored-by: Moon (mattweg's AI assistant) <[email protected]> Co-authored-by: Matt Weg <[email protected]>
github-actions bot
referenced
this pull request
in structured-world/gitlab-mcp
Sep 15, 2025
# 1.0.0 (2025-09-15) ### Bug Fixes * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([5024a2a](5024a2a)) * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([d99c483](d99c483)) * add missing @eslint/js dependency ([cd85a8d](cd85a8d)) * add package-lock.json to .gitignore ([067586c](067586c)) * add package-lock.json to .gitignore ([e7e49f0](e7e49f0)) * avoid error caused by line_range: null in discussion ([d50b7fd](d50b7fd)) * avoid error caused by line_range: null in discussion ([ac2cee2](ac2cee2)) * Correct formatting of GITLAB_API_URL environment variable in README ([06598d7](06598d7)) * Correct formatting of GITLAB_API_URL environment variable in README ([83f395d](83f395d)) * Fix build errors and optimize Docker build ([ee60995](ee60995)) * fix README ([f4b265b](f4b265b)) * fix README ([7323405](7323405)) * GitHub Actions workflow syntax errors ([6d6110c](6d6110c)) * GitHub Actions workflow syntax errors ([55d9a5e](55d9a5e)) * improve error handling for GitLab API rate limit exceeded ([11685d7](11685d7)) * improve error handling for GitLab API rate limit exceeded ([1a30d2c](1a30d2c)) * **list_issues:** add hint for scope all ([478df19](478df19)) * **list_issues:** add hint for scope all ([aa3b2ab](aa3b2ab)) * **list_issues:** make project_id optional ([b242522](b242522)) * **list_issues:** make project_id optional ([7cd4731](7cd4731)) * merge_requests_template can be null ([#79](#79)) ([cd8f0e5](cd8f0e5)) * merge_requests_template can be null ([#79](#79)) ([73fdd8f](73fdd8f)) * Remove deprecated create_issue tool and update ESLint configuration ([b9737ef](b9737ef)) * remove duplicate entry for get_branch_diffs in tools list ([6bc1379](6bc1379)) * remove duplicate entry for get_branch_diffs in tools list ([8398109](8398109)) * rename to source branch ([7b8cbc0](7b8cbc0)) * rename to source branch ([5baa2d1](5baa2d1)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([ab571d2](ab571d2)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([3f630ca](3f630ca)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([40e39d7](40e39d7)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([87efa04](87efa04)) * temporarily disable lint in CI to fix release process ([d552d06](d552d06)) * Update Docker image repository name in workflow ([b97b264](b97b264)) * Update Docker image repository name in workflow ([29ac699](29ac699)) * Update README title and remove duplicate star history chart ([92a3e95](92a3e95)) * Update README title and remove duplicate star history chart ([126fa8c](126fa8c)) ### Features * add branch comparison functionality and update related schemas ([c834ebc](c834ebc)) * add branch comparison functionality and update related schemas ([af81bd4](af81bd4)) * add configuration files and scripts for project setup ✨ ([5b35bc1](5b35bc1)) * add configuration files and scripts for project setup ✨ ([4aac7f5](4aac7f5)) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([402f068](402f068)), closes [#100](#100) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([17b8574](17b8574)), closes [#100](#100) * Add create_merge_request_thread tool for diff notes ([026dd58](026dd58)) * Add create_merge_request_thread tool for diff notes ([23b0348](23b0348)) * Add createDraftNote api support, useful for bulk code review ([5f08153](5f08153)) * Add createDraftNote api support, useful for bulk code review ([73f0c48](73f0c48)) * add docker image and push to dockerhub ([6f78969](6f78969)) * add docker image and push to dockerhub ([4fd7124](4fd7124)) * add GITLAB_LOCK_PROJECT environment variable ([c899a7d](c899a7d)) * add GITLAB_LOCK_PROJECT environment variable ([a102e94](a102e94)) * add issue discussions support ([4c57c37](4c57c37)) * add issue discussions support ([3d06892](3d06892)) * add milestone management commands to README ([5762b32](5762b32)) * add milestone management commands to README ([bd75140](bd75140)) * add my_issues and list_project_members tools ([a519a56](a519a56)) * add my_issues and list_project_members tools ([f33f330](f33f330)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([7e985af](7e985af)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([5a4d416](5a4d416)) * add pagination support for CI job logs to prevent context window flooding ([2905f30](2905f30)) * add pagination support for CI job logs to prevent context window flooding ([f05d8bf](f05d8bf)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([7be17b7](7be17b7)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([916a65a](916a65a)) * add support for creating and updating issue notes ([dc6cc59](dc6cc59)) * add support for creating and updating issue notes ([96d5e49](96d5e49)) * add support for ignoring files in branch diff results using regex patterns ([75fd5e8](75fd5e8)) * add support for ignoring files in branch diff results using regex patterns ([946c49a](946c49a)) * add tools for milestones ([fd1c8b9](fd1c8b9)) * add tools for milestones ([bb0da0a](bb0da0a)) * add user retrieval functions and schemas for GitLab API integration ([005b46a](005b46a)) * add user retrieval functions and schemas for GitLab API integration ([440921a](440921a)) * bump version to 1.0.61 🎉 ([ed032ba](ed032ba)) * bump version to 1.0.61 🎉 ([9a2bc5e](9a2bc5e)) * Decode project_id for GitLab API calls ([08ab135](08ab135)) * Decode project_id for GitLab API calls ([95ad321](95ad321)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([bf369a4](bf369a4)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([e692ddc](e692ddc)) * get merge request default description template on project retrieval ([808c34d](808c34d)) * get merge request default description template on project retrieval ([886faf5](886faf5)) * Gitlab list repository tree tool ([bccd5f2](bccd5f2)) * Gitlab list repository tree tool ([58f51a4](58f51a4)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([3f2b355](3f2b355)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([5f9aecd](5f9aecd)) * implement list_merge_requests functionality ([cc84777](cc84777)) * implement list_merge_requests functionality ([6acecd2](6acecd2)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([7c2578f](7c2578f)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([94b206f](94b206f)) * major release v2.1.0 with comprehensive improvements ([0fabf17](0fabf17)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([56a53b3](56a53b3)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([0006e67](0006e67)) * **release:** 1.0.44 adds pipeline jobs tool ([ea06c21](ea06c21)) * **release:** 1.0.44 adds pipeline jobs tool ([4e4eb46](4e4eb46)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([fef3606](fef3606)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([159da36](159da36)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([009ad97](009ad97)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([6a77b04](6a77b04)) * support resolving merge request notes ([bde83c0](bde83c0)) * support resolving merge request notes ([4c349a3](4c349a3)) * support search by branch for get_merge_request ([20f6275](20f6275)) * support search by branch for get_merge_request ([eaadf24](eaadf24)) * trigger workflow after fix ([435c8f1](435c8f1)) * trigger workflow after fix ([40e2a5d](40e2a5d)) * trigger workflow after jq fix ([5c67d68](5c67d68)) * trigger workflow after jq fix ([116d1f4](116d1f4)) * trigger workflow run ([7acdff9](7acdff9)) * trigger workflow run ([c047571](c047571)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([e967bb5](e967bb5)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([ebec8b1](ebec8b1))
github-actions bot
referenced
this pull request
in structured-world/gitlab-mcp
Sep 19, 2025
# 1.0.0 (2025-09-19) ### Bug Fixes * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([5024a2a](5024a2a)) * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([d99c483](d99c483)) * add package-lock.json to .gitignore ([067586c](067586c)) * add package-lock.json to .gitignore ([e7e49f0](e7e49f0)) * avoid error caused by line_range: null in discussion ([d50b7fd](d50b7fd)) * avoid error caused by line_range: null in discussion ([ac2cee2](ac2cee2)) * Correct formatting of GITLAB_API_URL environment variable in README ([06598d7](06598d7)) * Correct formatting of GITLAB_API_URL environment variable in README ([83f395d](83f395d)) * fix README ([f4b265b](f4b265b)) * fix README ([7323405](7323405)) * GitHub Actions workflow syntax errors ([6d6110c](6d6110c)) * GitHub Actions workflow syntax errors ([55d9a5e](55d9a5e)) * improve error handling for GitLab API rate limit exceeded ([11685d7](11685d7)) * improve error handling for GitLab API rate limit exceeded ([1a30d2c](1a30d2c)) * **list_issues:** add hint for scope all ([478df19](478df19)) * **list_issues:** add hint for scope all ([aa3b2ab](aa3b2ab)) * **list_issues:** make project_id optional ([b242522](b242522)) * **list_issues:** make project_id optional ([7cd4731](7cd4731)) * merge_requests_template can be null ([#79](#79)) ([cd8f0e5](cd8f0e5)) * merge_requests_template can be null ([#79](#79)) ([73fdd8f](73fdd8f)) * remove duplicate entry for get_branch_diffs in tools list ([6bc1379](6bc1379)) * remove duplicate entry for get_branch_diffs in tools list ([8398109](8398109)) * rename to source branch ([7b8cbc0](7b8cbc0)) * rename to source branch ([5baa2d1](5baa2d1)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([ab571d2](ab571d2)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([3f630ca](3f630ca)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([40e39d7](40e39d7)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([87efa04](87efa04)) * Update Docker image repository name in workflow ([b97b264](b97b264)) * Update Docker image repository name in workflow ([29ac699](29ac699)) * Update README title and remove duplicate star history chart ([92a3e95](92a3e95)) * Update README title and remove duplicate star history chart ([126fa8c](126fa8c)) ### Features * add branch comparison functionality and update related schemas ([c834ebc](c834ebc)) * add branch comparison functionality and update related schemas ([af81bd4](af81bd4)) * add configuration files and scripts for project setup ✨ ([5b35bc1](5b35bc1)) * add configuration files and scripts for project setup ✨ ([4aac7f5](4aac7f5)) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([402f068](402f068)), closes [#100](#100) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([17b8574](17b8574)), closes [#100](#100) * Add create_merge_request_thread tool for diff notes ([026dd58](026dd58)) * Add create_merge_request_thread tool for diff notes ([23b0348](23b0348)) * Add createDraftNote api support, useful for bulk code review ([5f08153](5f08153)) * Add createDraftNote api support, useful for bulk code review ([73f0c48](73f0c48)) * add docker image and push to dockerhub ([6f78969](6f78969)) * add docker image and push to dockerhub ([4fd7124](4fd7124)) * add GITLAB_LOCK_PROJECT environment variable ([c899a7d](c899a7d)) * add GITLAB_LOCK_PROJECT environment variable ([a102e94](a102e94)) * add issue discussions support ([4c57c37](4c57c37)) * add issue discussions support ([3d06892](3d06892)) * add milestone management commands to README ([5762b32](5762b32)) * add milestone management commands to README ([bd75140](bd75140)) * add my_issues and list_project_members tools ([a519a56](a519a56)) * add my_issues and list_project_members tools ([f33f330](f33f330)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([7e985af](7e985af)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([5a4d416](5a4d416)) * add pagination support for CI job logs to prevent context window flooding ([2905f30](2905f30)) * add pagination support for CI job logs to prevent context window flooding ([f05d8bf](f05d8bf)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([7be17b7](7be17b7)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([916a65a](916a65a)) * add support for creating and updating issue notes ([dc6cc59](dc6cc59)) * add support for creating and updating issue notes ([96d5e49](96d5e49)) * add support for ignoring files in branch diff results using regex patterns ([75fd5e8](75fd5e8)) * add support for ignoring files in branch diff results using regex patterns ([946c49a](946c49a)) * add tools for milestones ([fd1c8b9](fd1c8b9)) * add tools for milestones ([bb0da0a](bb0da0a)) * add user retrieval functions and schemas for GitLab API integration ([005b46a](005b46a)) * add user retrieval functions and schemas for GitLab API integration ([440921a](440921a)) * bump version to 1.0.61 🎉 ([ed032ba](ed032ba)) * bump version to 1.0.61 🎉 ([9a2bc5e](9a2bc5e)) * Decode project_id for GitLab API calls ([08ab135](08ab135)) * Decode project_id for GitLab API calls ([95ad321](95ad321)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([bf369a4](bf369a4)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([e692ddc](e692ddc)) * enhance test infrastructure and fix code quality issues ([95b3529](95b3529)) * get merge request default description template on project retrieval ([808c34d](808c34d)) * get merge request default description template on project retrieval ([886faf5](886faf5)) * Gitlab list repository tree tool ([bccd5f2](bccd5f2)) * Gitlab list repository tree tool ([58f51a4](58f51a4)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([3f2b355](3f2b355)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([5f9aecd](5f9aecd)) * implement comprehensive GitLab MCP enhancements v4.4.0 ([60fd9d8](60fd9d8)) * implement list_merge_requests functionality ([cc84777](cc84777)) * implement list_merge_requests functionality ([6acecd2](6acecd2)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([7c2578f](7c2578f)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([94b206f](94b206f)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([56a53b3](56a53b3)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([0006e67](0006e67)) * **release:** 1.0.44 adds pipeline jobs tool ([ea06c21](ea06c21)) * **release:** 1.0.44 adds pipeline jobs tool ([4e4eb46](4e4eb46)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([fef3606](fef3606)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([159da36](159da36)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([009ad97](009ad97)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([6a77b04](6a77b04)) * support resolving merge request notes ([bde83c0](bde83c0)) * support resolving merge request notes ([4c349a3](4c349a3)) * support search by branch for get_merge_request ([20f6275](20f6275)) * support search by branch for get_merge_request ([eaadf24](eaadf24)) * trigger workflow after fix ([435c8f1](435c8f1)) * trigger workflow after fix ([40e2a5d](40e2a5d)) * trigger workflow after jq fix ([5c67d68](5c67d68)) * trigger workflow after jq fix ([116d1f4](116d1f4)) * trigger workflow run ([7acdff9](7acdff9)) * trigger workflow run ([c047571](c047571)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([e967bb5](e967bb5)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([ebec8b1](ebec8b1)) ### BREAKING CHANGES * Major architectural improvements and feature additions - Migrate to Yarn 4 with strict TypeScript configuration - Implement comprehensive GraphQL Work Items API with 1021 tests - Add modular entity architecture (Core, Work Items, MRS, Files, Labels, etc.) - Implement dynamic tool registry with environment-based feature gating - Add comprehensive integration test suite with data lifecycle management - Enhance schema validation with case normalization and error handling - Implement smart user search with transliteration support - Add dual transport mode (stdio/HTTP) with automatic selection - Implement coverage reporting and CI/CD with semantic versioning - Add tool description customization for agentic optimization - Implement label name-to-ID conversion for improved UX - Add comprehensive error handling and logging infrastructure - Migrate from REST to GraphQL for work items operations - Add support for all GitLab Ultimate features and widgets - Implement security enhancements and read-only mode support Version: 4.4.0 (up from upstream 2.0.5) Tests: 1021 comprehensive tests (877 unit + 144 integration) Coverage: 76.69% statement coverage Architecture: Modern TypeScript with strict mode and ESM support
github-actions bot
referenced
this pull request
in structured-world/gitlab-mcp
Sep 19, 2025
# 1.0.0 (2025-09-19) ### Bug Fixes * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([5024a2a](5024a2a)) * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([d99c483](d99c483)) * add package-lock.json to .gitignore ([067586c](067586c)) * add package-lock.json to .gitignore ([e7e49f0](e7e49f0)) * avoid error caused by line_range: null in discussion ([d50b7fd](d50b7fd)) * avoid error caused by line_range: null in discussion ([ac2cee2](ac2cee2)) * Correct formatting of GITLAB_API_URL environment variable in README ([06598d7](06598d7)) * Correct formatting of GITLAB_API_URL environment variable in README ([83f395d](83f395d)) * fix README ([f4b265b](f4b265b)) * fix README ([7323405](7323405)) * GitHub Actions workflow syntax errors ([6d6110c](6d6110c)) * GitHub Actions workflow syntax errors ([55d9a5e](55d9a5e)) * improve error handling for GitLab API rate limit exceeded ([11685d7](11685d7)) * improve error handling for GitLab API rate limit exceeded ([1a30d2c](1a30d2c)) * **list_issues:** add hint for scope all ([478df19](478df19)) * **list_issues:** add hint for scope all ([aa3b2ab](aa3b2ab)) * **list_issues:** make project_id optional ([b242522](b242522)) * **list_issues:** make project_id optional ([7cd4731](7cd4731)) * merge_requests_template can be null ([#79](#79)) ([cd8f0e5](cd8f0e5)) * merge_requests_template can be null ([#79](#79)) ([73fdd8f](73fdd8f)) * remove duplicate entry for get_branch_diffs in tools list ([6bc1379](6bc1379)) * remove duplicate entry for get_branch_diffs in tools list ([8398109](8398109)) * rename to source branch ([7b8cbc0](7b8cbc0)) * rename to source branch ([5baa2d1](5baa2d1)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([ab571d2](ab571d2)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([3f630ca](3f630ca)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([40e39d7](40e39d7)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([87efa04](87efa04)) * Update Docker image repository name in workflow ([b97b264](b97b264)) * Update Docker image repository name in workflow ([29ac699](29ac699)) * Update README title and remove duplicate star history chart ([92a3e95](92a3e95)) * Update README title and remove duplicate star history chart ([126fa8c](126fa8c)) ### Features * add branch comparison functionality and update related schemas ([c834ebc](c834ebc)) * add branch comparison functionality and update related schemas ([af81bd4](af81bd4)) * add configuration files and scripts for project setup ✨ ([5b35bc1](5b35bc1)) * add configuration files and scripts for project setup ✨ ([4aac7f5](4aac7f5)) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([402f068](402f068)), closes [#100](#100) * add cookie-based authentication support for enterprise GitLab ([#101](#101)) ([17b8574](17b8574)), closes [#100](#100) * Add create_merge_request_thread tool for diff notes ([026dd58](026dd58)) * Add create_merge_request_thread tool for diff notes ([23b0348](23b0348)) * Add createDraftNote api support, useful for bulk code review ([5f08153](5f08153)) * Add createDraftNote api support, useful for bulk code review ([73f0c48](73f0c48)) * add docker image and push to dockerhub ([6f78969](6f78969)) * add docker image and push to dockerhub ([4fd7124](4fd7124)) * add GITLAB_LOCK_PROJECT environment variable ([c899a7d](c899a7d)) * add GITLAB_LOCK_PROJECT environment variable ([a102e94](a102e94)) * add issue discussions support ([4c57c37](4c57c37)) * add issue discussions support ([3d06892](3d06892)) * add milestone management commands to README ([5762b32](5762b32)) * add milestone management commands to README ([bd75140](bd75140)) * add my_issues and list_project_members tools ([a519a56](a519a56)) * add my_issues and list_project_members tools ([f33f330](f33f330)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([7e985af](7e985af)) * Add NPM publish workflow for automated package publishing ([#208](#208)) ([5a4d416](5a4d416)) * add pagination support for CI job logs to prevent context window flooding ([2905f30](2905f30)) * add pagination support for CI job logs to prevent context window flooding ([f05d8bf](f05d8bf)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([7be17b7](7be17b7)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([916a65a](916a65a)) * add support for creating and updating issue notes ([dc6cc59](dc6cc59)) * add support for creating and updating issue notes ([96d5e49](96d5e49)) * add support for ignoring files in branch diff results using regex patterns ([75fd5e8](75fd5e8)) * add support for ignoring files in branch diff results using regex patterns ([946c49a](946c49a)) * add tools for milestones ([fd1c8b9](fd1c8b9)) * add tools for milestones ([bb0da0a](bb0da0a)) * add user retrieval functions and schemas for GitLab API integration ([005b46a](005b46a)) * add user retrieval functions and schemas for GitLab API integration ([440921a](440921a)) * bump version to 1.0.61 🎉 ([ed032ba](ed032ba)) * bump version to 1.0.61 🎉 ([9a2bc5e](9a2bc5e)) * Bump version to 5.0.0 ([9f85a7b](9f85a7b)) * Decode project_id for GitLab API calls ([08ab135](08ab135)) * Decode project_id for GitLab API calls ([95ad321](95ad321)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([bf369a4](bf369a4)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([e692ddc](e692ddc)) * enhance test infrastructure and fix code quality issues ([95b3529](95b3529)) * get merge request default description template on project retrieval ([808c34d](808c34d)) * get merge request default description template on project retrieval ([886faf5](886faf5)) * Gitlab list repository tree tool ([bccd5f2](bccd5f2)) * Gitlab list repository tree tool ([58f51a4](58f51a4)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([3f2b355](3f2b355)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([5f9aecd](5f9aecd)) * implement comprehensive GitLab MCP enhancements v4.4.0 ([60fd9d8](60fd9d8)) * implement list_merge_requests functionality ([cc84777](cc84777)) * implement list_merge_requests functionality ([6acecd2](6acecd2)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([7c2578f](7c2578f)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([94b206f](94b206f)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([56a53b3](56a53b3)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([0006e67](0006e67)) * **release:** 1.0.44 adds pipeline jobs tool ([ea06c21](ea06c21)) * **release:** 1.0.44 adds pipeline jobs tool ([4e4eb46](4e4eb46)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([fef3606](fef3606)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([159da36](159da36)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([009ad97](009ad97)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([6a77b04](6a77b04)) * support resolving merge request notes ([bde83c0](bde83c0)) * support resolving merge request notes ([4c349a3](4c349a3)) * support search by branch for get_merge_request ([20f6275](20f6275)) * support search by branch for get_merge_request ([eaadf24](eaadf24)) * trigger workflow after fix ([435c8f1](435c8f1)) * trigger workflow after fix ([40e2a5d](40e2a5d)) * trigger workflow after jq fix ([5c67d68](5c67d68)) * trigger workflow after jq fix ([116d1f4](116d1f4)) * trigger workflow run ([7acdff9](7acdff9)) * trigger workflow run ([c047571](c047571)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([e967bb5](e967bb5)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([ebec8b1](ebec8b1)) ### BREAKING CHANGES * Major architectural improvements and feature additions - Migrate to Yarn 4 with strict TypeScript configuration - Implement comprehensive GraphQL Work Items API with 1021 tests - Add modular entity architecture (Core, Work Items, MRS, Files, Labels, etc.) - Implement dynamic tool registry with environment-based feature gating - Add comprehensive integration test suite with data lifecycle management - Enhance schema validation with case normalization and error handling - Implement smart user search with transliteration support - Add dual transport mode (stdio/HTTP) with automatic selection - Implement coverage reporting and CI/CD with semantic versioning - Add tool description customization for agentic optimization - Implement label name-to-ID conversion for improved UX - Add comprehensive error handling and logging infrastructure - Migrate from REST to GraphQL for work items operations - Add support for all GitLab Ultimate features and widgets - Implement security enhancements and read-only mode support Version: 4.4.0 (up from upstream 2.0.5) Tests: 1021 comprehensive tests (877 unit + 144 integration) Coverage: 76.69% statement coverage Architecture: Modern TypeScript with strict mode and ESM support
github-actions bot
pushed a commit
to detailobsessed/efficient-gitlab-mcp
that referenced
this pull request
Dec 24, 2025
# 1.0.0 (2025-12-24) ### Bug Fixes * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([5024a2a](5024a2a)) * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([d99c483](d99c483)) * add package-lock.json to .gitignore ([067586c](067586c)) * add package-lock.json to .gitignore ([e7e49f0](e7e49f0)) * avoid error caused by line_range: null in discussion ([d50b7fd](d50b7fd)) * avoid error caused by line_range: null in discussion ([ac2cee2](ac2cee2)) * change default HOST from 0.0.0.0 to 127.0.0.1 ([zereight#289](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/289)) ([4225366](4225366)) * **ci:** add Node.js 22 setup for semantic-release ([#13](#13)) ([941a64b](941a64b)) * Correct formatting of GITLAB_API_URL environment variable in README ([06598d7](06598d7)) * Correct formatting of GITLAB_API_URL environment variable in README ([83f395d](83f395d)) * create_or_update_file now properly updates existing files ([#2](#2)) ([6f97958](6f97958)) * fix README ([f4b265b](f4b265b)) * fix README ([7323405](7323405)) * GitHub Actions workflow syntax errors ([6d6110c](6d6110c)) * GitHub Actions workflow syntax errors ([55d9a5e](55d9a5e)) * improve error handling for GitLab API rate limit exceeded ([11685d7](11685d7)) * improve error handling for GitLab API rate limit exceeded ([1a30d2c](1a30d2c)) * **list_issues:** add hint for scope all ([478df19](478df19)) * **list_issues:** add hint for scope all ([aa3b2ab](aa3b2ab)) * **list_issues:** make project_id optional ([b242522](b242522)) * **list_issues:** make project_id optional ([7cd4731](7cd4731)) * merge_requests_template can be null ([zereight#79](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/79)) ([cd8f0e5](cd8f0e5)) * merge_requests_template can be null ([zereight#79](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/79)) ([73fdd8f](73fdd8f)) * pin zod-to-json-schema to 3.24.5 to prevent breakage from v3.25.0 ([zereight#285](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/285)) ([1dfb212](1dfb212)) * remove duplicate entry for get_branch_diffs in tools list ([6bc1379](6bc1379)) * remove duplicate entry for get_branch_diffs in tools list ([8398109](8398109)) * rename to source branch ([7b8cbc0](7b8cbc0)) * rename to source branch ([5baa2d1](5baa2d1)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([ab571d2](ab571d2)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([3f630ca](3f630ca)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([40e39d7](40e39d7)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([87efa04](87efa04)) * Update Docker image repository name in workflow ([b97b264](b97b264)) * Update Docker image repository name in workflow ([29ac699](29ac699)) * Update README title and remove duplicate star history chart ([92a3e95](92a3e95)) * Update README title and remove duplicate star history chart ([126fa8c](126fa8c)) ### Features * add 405 response for GET /mcp endpoint when STREAMABLE_HTTP is enabled. https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#listening-for-messages-from-the-server ([zereight#295](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/295)) ([6a03064](6a03064)) * add branch comparison functionality and update related schemas ([c834ebc](c834ebc)) * add branch comparison functionality and update related schemas ([af81bd4](af81bd4)) * add configuration files and scripts for project setup ✨ ([5b35bc1](5b35bc1)) * add configuration files and scripts for project setup ✨ ([4aac7f5](4aac7f5)) * add cookie-based authentication support for enterprise GitLab ([zereight#101](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/101)) ([402f068](402f068)), closes [zereight#100](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/100) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) * add cookie-based authentication support for enterprise GitLab ([zereight#101](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/101)) ([17b8574](17b8574)), closes [zereight#100](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/100) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) * Add create_merge_request_thread tool for diff notes ([026dd58](026dd58)) * Add create_merge_request_thread tool for diff notes ([23b0348](23b0348)) * Add createDraftNote api support, useful for bulk code review ([5f08153](5f08153)) * Add createDraftNote api support, useful for bulk code review ([73f0c48](73f0c48)) * add docker image and push to dockerhub ([6f78969](6f78969)) * add docker image and push to dockerhub ([4fd7124](4fd7124)) * add GitLab search tools (global, project, group) ([#6](#6)) ([3e2e279](3e2e279)) * add GitLab tool modules with 52 tools and comprehensive tests ([#1](#1)) ([14bc851](14bc851)) * add GITLAB_LOCK_PROJECT environment variable ([c899a7d](c899a7d)) * add GITLAB_LOCK_PROJECT environment variable ([a102e94](a102e94)) * add HTTP transport security features ([#9](#9)) ([0eed0d6](0eed0d6)) * add issue discussions support ([4c57c37](4c57c37)) * add issue discussions support ([3d06892](3d06892)) * add MCP protocol logging for agent observability ([#10](#10)) ([85c4c50](85c4c50)) * add milestone management commands to README ([5762b32](5762b32)) * add milestone management commands to README ([bd75140](bd75140)) * add my_issues and list_project_members tools ([a519a56](a519a56)) * add my_issues and list_project_members tools ([f33f330](f33f330)) * Add NPM publish workflow for automated package publishing ([zereight#208](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/208)) ([7e985af](7e985af)) * Add NPM publish workflow for automated package publishing ([zereight#208](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/208)) ([5a4d416](5a4d416)) * add OAuth2 configuration examples and update documentation for Docker deployments ([1f6f2f8](1f6f2f8)) * add OAuth2 support and update documentation ([52661c4](52661c4)) * add pagination support for CI job logs to prevent context window flooding ([2905f30](2905f30)) * add pagination support for CI job logs to prevent context window flooding ([f05d8bf](f05d8bf)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([7be17b7](7be17b7)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([916a65a](916a65a)) * add support for creating and updating issue notes ([dc6cc59](dc6cc59)) * add support for creating and updating issue notes ([96d5e49](96d5e49)) * add support for ignoring files in branch diff results using regex patterns ([75fd5e8](75fd5e8)) * add support for ignoring files in branch diff results using regex patterns ([946c49a](946c49a)) * add tools for milestones ([fd1c8b9](fd1c8b9)) * add tools for milestones ([bb0da0a](bb0da0a)) * add user retrieval functions and schemas for GitLab API integration ([005b46a](005b46a)) * add user retrieval functions and schemas for GitLab API integration ([440921a](440921a)) * bump version to 1.0.61 🎉 ([ed032ba](ed032ba)) * bump version to 1.0.61 🎉 ([9a2bc5e](9a2bc5e)) * Decode project_id for GitLab API calls ([08ab135](08ab135)) * Decode project_id for GitLab API calls ([95ad321](95ad321)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([bf369a4](bf369a4)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([e692ddc](e692ddc)) * get merge request default description template on project retrieval ([808c34d](808c34d)) * get merge request default description template on project retrieval ([886faf5](886faf5)) * Gitlab list repository tree tool ([bccd5f2](bccd5f2)) * Gitlab list repository tree tool ([58f51a4](58f51a4)) * **gitlab:** GitLab Merge Request Notes and Discussions: Full CRUD + Thread Resolution ([zereight#260](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/260)) ([067cdb6](067cdb6)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([3f2b355](3f2b355)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([5f9aecd](5f9aecd)) * implement gitlab releases endpoint ([zereight#259](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/259)) ([9b5c118](9b5c118)) * implement list_merge_requests functionality ([cc84777](cc84777)) * implement list_merge_requests functionality ([6acecd2](6acecd2)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([7c2578f](7c2578f)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([94b206f](94b206f)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([56a53b3](56a53b3)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([0006e67](0006e67)) * **release:** 1.0.44 adds pipeline jobs tool ([ea06c21](ea06c21)) * **release:** 1.0.44 adds pipeline jobs tool ([4e4eb46](4e4eb46)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([fef3606](fef3606)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([159da36](159da36)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([009ad97](009ad97)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([6a77b04](6a77b04)) * support resolving merge request notes ([bde83c0](bde83c0)) * support resolving merge request notes ([4c349a3](4c349a3)) * support search by branch for get_merge_request ([20f6275](20f6275)) * support search by branch for get_merge_request ([eaadf24](eaadf24)) * trigger workflow after fix ([435c8f1](435c8f1)) * trigger workflow after fix ([40e2a5d](40e2a5d)) * trigger workflow after jq fix ([5c67d68](5c67d68)) * trigger workflow after jq fix ([116d1f4](116d1f4)) * trigger workflow run ([7acdff9](7acdff9)) * trigger workflow run ([c047571](c047571)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([e967bb5](e967bb5)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([ebec8b1](ebec8b1))
github-actions bot
pushed a commit
to detailobsessed/efficient-gitlab-mcp
that referenced
this pull request
Dec 24, 2025
# [0.1.0](v0.0.0...v0.1.0) (2025-12-24) ### Bug Fixes * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([5024a2a](5024a2a)) * add `expanded` to `start` and `end` for GitLabDiscussionNoteSchema ([d99c483](d99c483)) * add package-lock.json to .gitignore ([067586c](067586c)) * add package-lock.json to .gitignore ([e7e49f0](e7e49f0)) * avoid error caused by line_range: null in discussion ([d50b7fd](d50b7fd)) * avoid error caused by line_range: null in discussion ([ac2cee2](ac2cee2)) * change default HOST from 0.0.0.0 to 127.0.0.1 ([zereight#289](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/289)) ([4225366](4225366)) * **ci:** add Node.js 22 setup for semantic-release ([#13](#13)) ([941a64b](941a64b)) * Correct formatting of GITLAB_API_URL environment variable in README ([06598d7](06598d7)) * Correct formatting of GITLAB_API_URL environment variable in README ([83f395d](83f395d)) * create_or_update_file now properly updates existing files ([#2](#2)) ([6f97958](6f97958)) * fix README ([f4b265b](f4b265b)) * fix README ([7323405](7323405)) * GitHub Actions workflow syntax errors ([6d6110c](6d6110c)) * GitHub Actions workflow syntax errors ([55d9a5e](55d9a5e)) * improve error handling for GitLab API rate limit exceeded ([11685d7](11685d7)) * improve error handling for GitLab API rate limit exceeded ([1a30d2c](1a30d2c)) * **list_issues:** add hint for scope all ([478df19](478df19)) * **list_issues:** add hint for scope all ([aa3b2ab](aa3b2ab)) * **list_issues:** make project_id optional ([b242522](b242522)) * **list_issues:** make project_id optional ([7cd4731](7cd4731)) * merge_requests_template can be null ([zereight#79](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/79)) ([cd8f0e5](cd8f0e5)) * merge_requests_template can be null ([zereight#79](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/79)) ([73fdd8f](73fdd8f)) * pin zod-to-json-schema to 3.24.5 to prevent breakage from v3.25.0 ([zereight#285](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/285)) ([1dfb212](1dfb212)) * remove duplicate entry for get_branch_diffs in tools list ([6bc1379](6bc1379)) * remove duplicate entry for get_branch_diffs in tools list ([8398109](8398109)) * rename to source branch ([7b8cbc0](7b8cbc0)) * rename to source branch ([5baa2d1](5baa2d1)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([ab571d2](ab571d2)) * **schemas:** make avatar_url nullable in GitLabUserSchema ([3f630ca](3f630ca)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([40e39d7](40e39d7)) * **schemas:** make illustration nullable in GitLabPipelineSchema ([87efa04](87efa04)) * Update Docker image repository name in workflow ([b97b264](b97b264)) * Update Docker image repository name in workflow ([29ac699](29ac699)) * Update README title and remove duplicate star history chart ([92a3e95](92a3e95)) * Update README title and remove duplicate star history chart ([126fa8c](126fa8c)) ### Features * add 405 response for GET /mcp endpoint when STREAMABLE_HTTP is enabled. https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#listening-for-messages-from-the-server ([zereight#295](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/295)) ([6a03064](6a03064)) * add branch comparison functionality and update related schemas ([c834ebc](c834ebc)) * add branch comparison functionality and update related schemas ([af81bd4](af81bd4)) * add configuration files and scripts for project setup ✨ ([5b35bc1](5b35bc1)) * add configuration files and scripts for project setup ✨ ([4aac7f5](4aac7f5)) * add cookie-based authentication support for enterprise GitLab ([zereight#101](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/101)) ([402f068](402f068)), closes [zereight#100](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/100) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) * add cookie-based authentication support for enterprise GitLab ([zereight#101](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/101)) ([17b8574](17b8574)), closes [zereight#100](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/100) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) [tou#cookie](https://github.com/tou/issues/cookie) * Add create_merge_request_thread tool for diff notes ([026dd58](026dd58)) * Add create_merge_request_thread tool for diff notes ([23b0348](23b0348)) * Add createDraftNote api support, useful for bulk code review ([5f08153](5f08153)) * Add createDraftNote api support, useful for bulk code review ([73f0c48](73f0c48)) * add docker image and push to dockerhub ([6f78969](6f78969)) * add docker image and push to dockerhub ([4fd7124](4fd7124)) * add GitLab search tools (global, project, group) ([#6](#6)) ([3e2e279](3e2e279)) * add GitLab tool modules with 52 tools and comprehensive tests ([#1](#1)) ([14bc851](14bc851)) * add GITLAB_LOCK_PROJECT environment variable ([c899a7d](c899a7d)) * add GITLAB_LOCK_PROJECT environment variable ([a102e94](a102e94)) * add HTTP transport security features ([#9](#9)) ([0eed0d6](0eed0d6)) * add issue discussions support ([4c57c37](4c57c37)) * add issue discussions support ([3d06892](3d06892)) * add MCP protocol logging for agent observability ([#10](#10)) ([85c4c50](85c4c50)) * add milestone management commands to README ([5762b32](5762b32)) * add milestone management commands to README ([bd75140](bd75140)) * add my_issues and list_project_members tools ([a519a56](a519a56)) * add my_issues and list_project_members tools ([f33f330](f33f330)) * Add NPM publish workflow for automated package publishing ([zereight#208](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/208)) ([7e985af](7e985af)) * Add NPM publish workflow for automated package publishing ([zereight#208](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/208)) ([5a4d416](5a4d416)) * add OAuth2 configuration examples and update documentation for Docker deployments ([1f6f2f8](1f6f2f8)) * add OAuth2 support and update documentation ([52661c4](52661c4)) * add pagination support for CI job logs to prevent context window flooding ([2905f30](2905f30)) * add pagination support for CI job logs to prevent context window flooding ([f05d8bf](f05d8bf)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([7be17b7](7be17b7)) * add read-only mode support via GITLAB_READ_ONLY_MODE environment variable ([916a65a](916a65a)) * add support for creating and updating issue notes ([dc6cc59](dc6cc59)) * add support for creating and updating issue notes ([96d5e49](96d5e49)) * add support for ignoring files in branch diff results using regex patterns ([75fd5e8](75fd5e8)) * add support for ignoring files in branch diff results using regex patterns ([946c49a](946c49a)) * add tools for milestones ([fd1c8b9](fd1c8b9)) * add tools for milestones ([bb0da0a](bb0da0a)) * add user retrieval functions and schemas for GitLab API integration ([005b46a](005b46a)) * add user retrieval functions and schemas for GitLab API integration ([440921a](440921a)) * bump version to 1.0.61 🎉 ([ed032ba](ed032ba)) * bump version to 1.0.61 🎉 ([9a2bc5e](9a2bc5e)) * Decode project_id for GitLab API calls ([08ab135](08ab135)) * Decode project_id for GitLab API calls ([95ad321](95ad321)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([bf369a4](bf369a4)) * enhance CreateMergeRequest options with assignee, reviewer, and label support ([e692ddc](e692ddc)) * get merge request default description template on project retrieval ([808c34d](808c34d)) * get merge request default description template on project retrieval ([886faf5](886faf5)) * Gitlab list repository tree tool ([bccd5f2](bccd5f2)) * Gitlab list repository tree tool ([58f51a4](58f51a4)) * **gitlab:** GitLab Merge Request Notes and Discussions: Full CRUD + Thread Resolution ([zereight#260](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/260)) ([067cdb6](067cdb6)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([3f2b355](3f2b355)) * Implement add_merge_request_thread_note function for adding notes to existing MR threads ([5f9aecd](5f9aecd)) * implement gitlab releases endpoint ([zereight#259](https://github.com/detailobsessed/efficient-gitlab-mcp/issues/259)) ([9b5c118](9b5c118)) * implement list_merge_requests functionality ([cc84777](cc84777)) * implement list_merge_requests functionality ([6acecd2](6acecd2)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([7c2578f](7c2578f)) * Implement proxy configuration for HTTP/HTTPS/SOCKS ([94b206f](94b206f)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([56a53b3](56a53b3)) * **pipeline:** Add list_pipeline_trigger_jobs tools ([0006e67](0006e67)) * **release:** 1.0.44 adds pipeline jobs tool ([ea06c21](ea06c21)) * **release:** 1.0.44 adds pipeline jobs tool ([4e4eb46](4e4eb46)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([fef3606](fef3606)) * rename ignored_files_regex to excluded_file_patterns and update descriptions for clarity ([159da36](159da36)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([009ad97](009ad97)) * replace GITLAB_LOCK_PROJECT with GITLAB_ALLOWED_PROJECT_IDS ([6a77b04](6a77b04)) * support resolving merge request notes ([bde83c0](bde83c0)) * support resolving merge request notes ([4c349a3](4c349a3)) * support search by branch for get_merge_request ([20f6275](20f6275)) * support search by branch for get_merge_request ([eaadf24](eaadf24)) * trigger workflow after fix ([435c8f1](435c8f1)) * trigger workflow after fix ([40e2a5d](40e2a5d)) * trigger workflow after jq fix ([5c67d68](5c67d68)) * trigger workflow after jq fix ([116d1f4](116d1f4)) * trigger workflow run ([7acdff9](7acdff9)) * trigger workflow run ([c047571](c047571)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([e967bb5](e967bb5)) * trigger workflow with GITLAB_PERSONAL_ACCESS_TOKEN ([ebec8b1](ebec8b1))
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add support for Netscape cookie file authentication to enable access to enterprise GitLab instances that use SSO/OAuth2 redirects.
Enables authentication flows like: curl -L -b ~/.midway/cookie Useful for enterprise environments with federated authentication.