docs: add Jenkins MCP integration documentation - #1881
Conversation
|
|
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughAdds Jenkins (MCP) documentation, navigation and README entries, and unit tests validating RemoteMCPToolset configuration and prerequisites parsing for Jenkins MCP. Changes
Sequence Diagram(s)(omitted — changes are documentation and small tests; no new multi-component control flow requiring visualization) Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✅ Deploy Preview for holmes-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
docs/data-sources/builtin-toolsets/jenkins-mcp.md (1)
229-254: Flatten troubleshooting into a single consolidated block.Please replace the multiple
###troubleshooting subsections with one compact section (single code block with comments/checks). Current structure is header-heavy for this doc style.As per coding guidelines: "Consolidate troubleshooting commands in documentation using a single code block with comments instead of separate headers for each scenario" and "Avoid excessive headers in documentation".
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md` around lines 229 - 254, Replace the three separate troubleshooting subsections ("Authentication Errors", "Connection Issues", "Plugin Not Found") under the "Troubleshooting" heading with a single consolidated block that combines all checks and remediation steps into one compact code-block-style list; include checks for API token validity and base64 credentials (username:token), permission verification for the Jenkins user, accessibility of the Jenkins URL from the Holmes pod/container, an SSL verification note (mention verify_ssl: false for self-signed certs), and MCP Server plugin presence/restart steps (and check /mcp-server/mcp endpoint and Jenkins logs) as commented bullets inside that single block so the doc follows the guideline to avoid multiple headers.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md`:
- Line 3: The doc repeats enumerated capabilities for the Jenkins MCP
integration (intro paragraph, the llm_instructions section, and the "Available
Tools" matrix) which violates the toolset doc policy; remove those
capability/operation listings from the intro, the llm_instructions block, and
the "Available Tools" matrix while keeping a short high-level integration
description and any necessary usage/setup notes. Specifically, edit
docs/data-sources/builtin-toolsets/jenkins-mcp.md to delete the detailed feature
lists in the intro, the llm_instructions section, and the "Available Tools"
table, leaving only concise integration purpose/usage text and removing
stale-prone operation enumerations so the file conforms to the repository
guideline.
- Line 1: The Jenkins (MCP) integration registration is incomplete: add an entry
for "Jenkins (MCP)" into the repository README.md integration list, add the
Jenkins logo asset into images/integration_logos/ with the same naming
convention as other integrations, add integration test coverage (follow the
patterns used by other built-in toolsets tests) to include Jenkins MCP, and
update or create an appropriate walkthrough doc (replace or reference
docs/walkthrough/why-holmesgpt.md with an existing walkthrough file) to mention
Jenkins MCP; use docs/data-sources/builtin-toolsets/jenkins-mcp.md and
docs/data-sources/builtin-toolsets/index.md as the canonical integration content
to reference when adding README, logo, tests, and walkthrough mentions.
---
Nitpick comments:
In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md`:
- Around line 229-254: Replace the three separate troubleshooting subsections
("Authentication Errors", "Connection Issues", "Plugin Not Found") under the
"Troubleshooting" heading with a single consolidated block that combines all
checks and remediation steps into one compact code-block-style list; include
checks for API token validity and base64 credentials (username:token),
permission verification for the Jenkins user, accessibility of the Jenkins URL
from the Holmes pod/container, an SSL verification note (mention verify_ssl:
false for self-signed certs), and MCP Server plugin presence/restart steps (and
check /mcp-server/mcp endpoint and Jenkins logs) as commented bullets inside
that single block so the doc follows the guideline to avoid multiple headers.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: c3ec6115-2833-4758-a7de-65dbe0ba65b5
📥 Commits
Reviewing files that changed from the base of the PR and between 4630636 and cc65ea725c88cb1c6145ea1f2cd3db90dffa5a50.
📒 Files selected for processing (3)
docs/data-sources/builtin-toolsets/.nav.ymldocs/data-sources/builtin-toolsets/index.mddocs/data-sources/builtin-toolsets/jenkins-mcp.md
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
docs/data-sources/builtin-toolsets/jenkins-mcp.md (1)
208-233: Replace subsection headers with bold text in Troubleshooting.The Troubleshooting section uses three
###headers for minor subsections. As per coding guidelines, use bold text for minor sections instead of markdown headers to reduce verbosity.📝 Proposed refactor using bold text
## Troubleshooting -### Authentication Errors +**Authentication Errors** If you receive 401 or 403 errors: 1. Verify your API token is valid and not expired 2. Ensure the credentials are properly base64 encoded (username:token format) 3. Check that the Jenkins user has appropriate permissions -### Connection Issues +**Connection Issues** If Holmes cannot connect to Jenkins: 1. Verify the Jenkins URL is accessible from the Holmes pod/container 2. Check if SSL certificate verification is causing issues (`verify_ssl: false` for self-signed certs) 3. Ensure the MCP Server plugin is installed and enabled in Jenkins -### Plugin Not Found +**Plugin Not Found** If the `/mcp-server/mcp` endpoint returns 404: 1. Verify the MCP Server plugin is installed in Jenkins 2. Restart Jenkins after plugin installation 3. Check Jenkins system logs for plugin errorsAs per coding guidelines: "Avoid excessive headers in documentation - use bold text for minor sections, combine content into single code blocks with comments instead of separate headers".
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md` around lines 208 - 233, In the Troubleshooting section, replace the three markdown subsection headers "### Authentication Errors", "### Connection Issues", and "### Plugin Not Found" with bold inline headings (e.g., **Authentication Errors**, **Connection Issues**, **Plugin Not Found**) and merge their bullet lists under those bold lines so the content remains the same but uses bold text instead of additional `###` headers; ensure the main "Troubleshooting" heading stays as-is and preserve existing bullets and instructions verbatim.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md`:
- Line 1: Add Jenkins (MCP) to the integrations table in README.md by inserting
a new row that follows the existing table format and includes an icon reference
to the logo (use the same relative path and HTML/Markdown pattern as other
entries), and add the logo asset file named jenkins-icon.png (or the same image
format used by other logos) into images/integration_logos/ so the icon path
resolves; locate the existing registration in
docs/data-sources/builtin-toolsets/index.md to copy the exact display name
"Jenkins (MCP)" and ensure the README table entry string and image filename
match that registration.
---
Nitpick comments:
In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md`:
- Around line 208-233: In the Troubleshooting section, replace the three
markdown subsection headers "### Authentication Errors", "### Connection
Issues", and "### Plugin Not Found" with bold inline headings (e.g.,
**Authentication Errors**, **Connection Issues**, **Plugin Not Found**) and
merge their bullet lists under those bold lines so the content remains the same
but uses bold text instead of additional `###` headers; ensure the main
"Troubleshooting" heading stays as-is and preserve existing bullets and
instructions verbatim.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 1c7be9fd-592d-4709-98a5-42b00933d0ff
📥 Commits
Reviewing files that changed from the base of the PR and between cc65ea725c88cb1c6145ea1f2cd3db90dffa5a50 and 5df294b0b4b64b09ee49be97e4b1279d085ffe78.
📒 Files selected for processing (1)
docs/data-sources/builtin-toolsets/jenkins-mcp.md
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@tests/test_mcp_toolset.py`:
- Around line 2314-2339: The failing tests call prerequisites_callable which
internally calls asyncio.run(self._get_server_tools()), so mock
_get_server_tools before calling prerequisites_callable in the three tests
(test_jenkins_config_url_and_mode_parsed,
test_jenkins_config_auth_header_preserved,
test_jenkins_config_ssl_verification_disabled); use monkeypatch.setattr on the
toolset instance to replace _get_server_tools with an async function that
returns an empty ListToolsResult (or equivalent tools list) to avoid real
network calls, or factor that mock into a reusable fixture/helper that applies
the same monkeypatch to the toolset and invoke it at the start of each test.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 02f4132e-2901-4638-87ba-934d0fed3600
📥 Commits
Reviewing files that changed from the base of the PR and between 5df294b0b4b64b09ee49be97e4b1279d085ffe78 and b8ccc89d24d8e01d68f3afdb85e69a434dd28f8d.
⛔ Files ignored due to path filters (2)
images/integration_logos/jenkins-icon.pngis excluded by!**/*.pngimages/integration_logos/jenkins-icon.svgis excluded by!**/*.svg
📒 Files selected for processing (3)
README.mddocs/why-holmesgpt.mdtests/test_mcp_toolset.py
✅ Files skipped from review due to trivial changes (2)
- docs/why-holmesgpt.md
- README.md
fd6f1b2 to
b93f34e
Compare
There was a problem hiding this comment.
🧹 Nitpick comments (1)
docs/data-sources/builtin-toolsets/jenkins-mcp.md (1)
208-233: Consider using bold text instead of headers in Troubleshooting.The three troubleshooting subsections currently use
###headers. Per the documentation guidelines about avoiding excessive headers and using bold text for minor sections, consider this structure:## Troubleshooting -### Authentication Errors +**Authentication Errors** If you receive 401 or 403 errors: 1. Verify your API token is valid and not expired 2. Ensure the credentials are properly base64 encoded (username:token format) 3. Check that the Jenkins user has appropriate permissions -### Connection Issues +**Connection Issues** If Holmes cannot connect to Jenkins: 1. Verify the Jenkins URL is accessible from the Holmes pod/container 2. Check if SSL certificate verification is causing issues (`verify_ssl: false` for self-signed certs) 3. Ensure the MCP Server plugin is installed and enabled in Jenkins -### Plugin Not Found +**Plugin Not Found** If the `/mcp-server/mcp` endpoint returns 404:This maintains readability while reducing header nesting. As per coding guidelines: "Avoid excessive headers in documentation - use bold text for minor sections".
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md` around lines 208 - 233, Replace the three subsection Markdown headers "### Authentication Errors", "### Connection Issues", and "### Plugin Not Found" under the "Troubleshooting" section with bold text (e.g. **Authentication Errors**, **Connection Issues**, **Plugin Not Found**) to reduce header nesting; keep the numbered guidance items intact and adjust spacing so each bolded subsection is followed by its list (no extra header markers) to comply with the "Avoid excessive headers" guideline.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@docs/data-sources/builtin-toolsets/jenkins-mcp.md`:
- Around line 208-233: Replace the three subsection Markdown headers "###
Authentication Errors", "### Connection Issues", and "### Plugin Not Found"
under the "Troubleshooting" section with bold text (e.g. **Authentication
Errors**, **Connection Issues**, **Plugin Not Found**) to reduce header nesting;
keep the numbered guidance items intact and adjust spacing so each bolded
subsection is followed by its list (no extra header markers) to comply with the
"Avoid excessive headers" guideline.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 8613d6e8-cb2e-4448-9bf6-5598403c8c2d
📥 Commits
Reviewing files that changed from the base of the PR and between fd6f1b2887041ad92fe197eb60f55e6e5b5a5609 and b93f34eef61cd83188d9b929fc922145ca8685ef.
⛔ Files ignored due to path filters (2)
images/integration_logos/jenkins-icon.pngis excluded by!**/*.pngimages/integration_logos/jenkins-icon.svgis excluded by!**/*.svg
📒 Files selected for processing (6)
README.mddocs/data-sources/builtin-toolsets/.nav.ymldocs/data-sources/builtin-toolsets/index.mddocs/data-sources/builtin-toolsets/jenkins-mcp.mddocs/why-holmesgpt.mdtests/test_mcp_toolset.py
✅ Files skipped from review due to trivial changes (4)
- docs/data-sources/builtin-toolsets/.nav.yml
- docs/data-sources/builtin-toolsets/index.md
- docs/why-holmesgpt.md
- README.md
b93f34e to
3621fed
Compare
arikalon1
left a comment
There was a problem hiding this comment.
Thanks for the PR @henrik-koren
Jenkins will be useful for many users!
Head branch was pushed to by a user without write access
3621fed to
c4758a9
Compare
Add documentation and tests for the Jenkins MCP server integration: - New docs page with installation, configuration, and usage examples - Registration entries in toolsets index and why-holmesgpt pages - Config validation tests for the Jenkins MCP toolset - Unit tests with mocked _get_server_tools to eliminate network calls - Troubleshooting subsections use bold text instead of ### headers Generated with [Devin](https://cli.devin.ai/docs) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> Signed-off-by: Henrik Koren <koren.henrik@gmail.com>
c4758a9 to
a445728
Compare
Summary
Adds a dedicated documentation page for the Jenkins MCP Server integration, allowing Holmes to investigate CI/CD build failures, monitor pipeline status, and analyze Jenkins jobs.
Changes
docs/data-sources/builtin-toolsets/jenkins-mcp.md(new)~/.holmes/config.yaml), Helm, and Kubernetes Secretdocs/data-sources/builtin-toolsets/index.mddocs/data-sources/builtin-toolsets/.nav.ymljenkins-mcp.mdin the MkDocsawesome-navnavigationTest plan
Generated with Devin
Summary by CodeRabbit
Documentation
Tests