chore(deps): update dependency @circleci/mcp-server-circleci to v0.19.1 - #819
Open
renovate[bot] wants to merge 1 commit into
Open
chore(deps): update dependency @circleci/mcp-server-circleci to v0.19.1#819renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
Contributor
🔒 MCP Security Scan Results✅ mcp-server-circleci
Summary: Scanned 1 MCP server(s), all passed security checks. ✅ |
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.
This PR contains the following updates:
0.19.0→0.19.1Release Notes
CircleCI-Public/mcp-server-circleci (@circleci/mcp-server-circleci)
v0.19.1Compare Source
Security
outputDir(get_build_failure_logs,download_usage_api_data) andcsvFilePath(find_underused_resource_classes) were used unvalidated, so a caller could create directories and write files anywhere the server process had access (/etc,~/.ssh,~/Library/LaunchAgents, …) or read any file the process could open. Reads and writes are now confined to the server's working directory, the user's home directory and the system temp directory; hidden config directories,node_modulesand launch-agent directories are rejected. SetMCP_FILE_OUTPUT_ROOTSto allow additional locations./etc,/usr,/bin,/System,/Library,%SystemRoot%, …) are refused unconditionally, independently of the permitted roots. Without this floor, a server launched with a working directory of/— which is what a GUI MCP client or a systemd unit with noWorkingDirectorygives the process — would have had the entire filesystem as a permitted root, leaving the vulnerability open in that configuration.download_usage_api_data. The caller-suppliedjobId,startDateandendDatewere interpolated straight into the output filename, so a value such as/../../../../tmp/pwnedescapedoutputDirand gave the caller control of the full written path. Every interpolated value is now reduced to a single safe filename segment, and each write is asserted to land as a direct child of the validated directory.O_NOFOLLOW. The output filenames are derived from caller input and the temp directory is world-writable, so another local process could pre-plant a symlink at the destination filename and redirect the write to an arbitrary file; validating the directory alone did not prevent this.find_underused_resource_classesreports only the errno for a failed read.download_usage_api_datavalidatesoutputDirbefore starting an export job instead of on the poll that finds it complete, so a rejected directory no longer consumes a usage export.Added
MCP_FILE_OUTPUT_ROOTS— comma-separated list of additional directories that the file-reading/writing tools may use. The working directory, home directory and temp directory are always allowed; system directories can never be allowed. Deployments whose checkout lives outside those roots (/workspacein a container,/srv, a secondary volume) must set this.Configuration
📅 Schedule: (UTC)
* 0-3 * * 1)🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.