Skip to content

Use rhobs/obs-mcp toolset for Prometheus/Alertmanager (replaces observability mcp)#226

Open
saswatamcode wants to merge 4 commits intoopenshift:mainfrom
saswatamcode:obs-mcp-1
Open

Use rhobs/obs-mcp toolset for Prometheus/Alertmanager (replaces observability mcp)#226
saswatamcode wants to merge 4 commits intoopenshift:mainfrom
saswatamcode:obs-mcp-1

Conversation

@saswatamcode
Copy link
Copy Markdown
Member

./kubernetes-mcp-server --help
Kubernetes Model Context Protocol (MCP) server

Usage:
  kubernetes-mcp-server [command] [options] [flags]

Examples:
  # show this help
  kubernetes-mcp-server -h
  
  # shows version information
  kubernetes-mcp-server --version
  
  # start STDIO server
  kubernetes-mcp-server
  
  # start a SSE server on port 8080
  kubernetes-mcp-server --port 8080
  
  # start a SSE server on port 8443 with a public HTTPS host of example.com
  kubernetes-mcp-server --port 8443 --sse-base-url https://example.com:8443
  
  # start a SSE server on port 8080 with multi-cluster tools disabled
  kubernetes-mcp-server --port 8080 --disable-multi-cluster
  
  # start with explicit cluster provider strategy
  kubernetes-mcp-server --cluster-provider kubeconfig
  
  # start with kcp cluster provider for multi-workspace support
  kubernetes-mcp-server --cluster-provider kcp

Flags:
      --cluster-provider string   Cluster provider strategy to use (one of: acm, acm-kubeconfig, disabled, in-cluster, kcp, kubeconfig). If not set, the server will auto-detect based on the environment.
      --config string             Path of the config file.
      --config-dir string         Path to drop-in configuration directory (files loaded in lexical order). Defaults to conf.d relative to the config file if --config is set.
      --disable-destructive       If true, tools annotated with destructiveHint=true are disabled
      --disable-multi-cluster     Disable multi cluster tools. Optional. If true, all tools will be run against the default cluster/context.
  -h, --help                      help for kubernetes-mcp-server
      --kubeconfig string         Path to the kubeconfig file to use for authentication
      --list-output string        Output format for resource list operations (one of: yaml, table). Defaults to table.
      --log-level int             Set the log level (from 0 to 9)
      --port string               Start a streamable HTTP and SSE HTTP server on the specified port (e.g. 8080)
      --read-only                 If true, only tools annotated with readOnlyHint=true are exposed
      --require-tls               Require TLS for server and all outbound connections
      --sse-base-url string       SSE public base URL to use when sending the endpoint message (e.g. https://example.com)
      --stateless                 If true, run the MCP server in stateless mode (disables tool/prompt change notifications). Useful for container deployments and load balancing. Default is false (stateful mode)
      --tls-cert string           Path to TLS certificate file for HTTPS. Must be used together with --tls-key.
      --tls-key string            Path to TLS private key file for HTTPS. Must be used together with --tls-cert.
      --toolsets strings          Comma-separated list of MCP toolsets to use (available toolsets: config, core, helm, kcp, kubevirt, netedge, obs-mcp, openshift, ossm, tekton). Defaults to core, config.
      --version                   Print version information and quit
Screenshot 2026-04-14 at 07 51 06

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 14, 2026

Important

Review skipped

Too many files!

This PR contains 295 files, which is 145 over the limit of 150.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 2a6fc6bb-d240-4bb5-9830-80e8ffc7d524

📥 Commits

Reviewing files that changed from the base of the PR and between 8c6ee76 and 52a4797.

⛔ Files ignored due to path filters (5)
  • go.sum is excluded by !**/*.sum
  • vendor/github.com/go-openapi/runtime/go.work is excluded by !**/*.work
  • vendor/github.com/go-openapi/runtime/go.work.sum is excluded by !**/*.sum
  • vendor/github.com/go-openapi/swag/go.work is excluded by !**/*.work
  • vendor/github.com/go-openapi/swag/go.work.sum is excluded by !**/*.sum
📒 Files selected for processing (295)
  • Makefile
  • README.md
  • docs/METRICS.md
  • docs/OBSERVABILITY.md
  • docs/configuration.md
  • go.mod
  • internal/tools/update-readme/main.go
  • pkg/mcp/modules.go
  • pkg/prometheus/alertmanager.go
  • pkg/prometheus/client_test.go
  • pkg/prometheus/time.go
  • pkg/prometheus/types.go
  • pkg/toolsets/observability/alertmanager.go
  • pkg/toolsets/observability/config.go
  • pkg/toolsets/observability/helpers.go
  • pkg/toolsets/observability/helpers_test.go
  • pkg/toolsets/observability/prometheus.go
  • pkg/toolsets/observability/toolset.go
  • pkg/toolsets/observability/toolset_test.go
  • vendor/github.com/dennwc/varint/.gitignore
  • vendor/github.com/dennwc/varint/.travis.yml
  • vendor/github.com/dennwc/varint/LICENSE
  • vendor/github.com/dennwc/varint/README.md
  • vendor/github.com/dennwc/varint/proto.go
  • vendor/github.com/dennwc/varint/varint.go
  • vendor/github.com/go-openapi/analysis/.codecov.yml
  • vendor/github.com/go-openapi/analysis/.gitattributes
  • vendor/github.com/go-openapi/analysis/.gitignore
  • vendor/github.com/go-openapi/analysis/.golangci.yml
  • vendor/github.com/go-openapi/analysis/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/analysis/LICENSE
  • vendor/github.com/go-openapi/analysis/README.md
  • vendor/github.com/go-openapi/analysis/analyzer.go
  • vendor/github.com/go-openapi/analysis/debug.go
  • vendor/github.com/go-openapi/analysis/doc.go
  • vendor/github.com/go-openapi/analysis/errors.go
  • vendor/github.com/go-openapi/analysis/fixer.go
  • vendor/github.com/go-openapi/analysis/flatten.go
  • vendor/github.com/go-openapi/analysis/flatten_name.go
  • vendor/github.com/go-openapi/analysis/flatten_options.go
  • vendor/github.com/go-openapi/analysis/internal/debug/debug.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/normalize/normalize.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/operations/operations.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/replace/errors.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/replace/replace.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/schutils/flatten_schema.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/sortref/keys.go
  • vendor/github.com/go-openapi/analysis/internal/flatten/sortref/sort_ref.go
  • vendor/github.com/go-openapi/analysis/mixin.go
  • vendor/github.com/go-openapi/analysis/schema.go
  • vendor/github.com/go-openapi/errors/.gitattributes
  • vendor/github.com/go-openapi/errors/.gitignore
  • vendor/github.com/go-openapi/errors/.golangci.yml
  • vendor/github.com/go-openapi/errors/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/errors/LICENSE
  • vendor/github.com/go-openapi/errors/README.md
  • vendor/github.com/go-openapi/errors/api.go
  • vendor/github.com/go-openapi/errors/auth.go
  • vendor/github.com/go-openapi/errors/doc.go
  • vendor/github.com/go-openapi/errors/headers.go
  • vendor/github.com/go-openapi/errors/middleware.go
  • vendor/github.com/go-openapi/errors/parsing.go
  • vendor/github.com/go-openapi/errors/schema.go
  • vendor/github.com/go-openapi/jsonpointer/.golangci.yml
  • vendor/github.com/go-openapi/jsonpointer/README.md
  • vendor/github.com/go-openapi/jsonpointer/pointer.go
  • vendor/github.com/go-openapi/jsonreference/.golangci.yml
  • vendor/github.com/go-openapi/jsonreference/NOTICE
  • vendor/github.com/go-openapi/jsonreference/README.md
  • vendor/github.com/go-openapi/jsonreference/internal/normalize_url.go
  • vendor/github.com/go-openapi/jsonreference/reference.go
  • vendor/github.com/go-openapi/loads/.editorconfig
  • vendor/github.com/go-openapi/loads/.gitignore
  • vendor/github.com/go-openapi/loads/.golangci.yml
  • vendor/github.com/go-openapi/loads/.travis.yml
  • vendor/github.com/go-openapi/loads/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/loads/LICENSE
  • vendor/github.com/go-openapi/loads/README.md
  • vendor/github.com/go-openapi/loads/doc.go
  • vendor/github.com/go-openapi/loads/errors.go
  • vendor/github.com/go-openapi/loads/loaders.go
  • vendor/github.com/go-openapi/loads/options.go
  • vendor/github.com/go-openapi/loads/spec.go
  • vendor/github.com/go-openapi/runtime/.editorconfig
  • vendor/github.com/go-openapi/runtime/.gitattributes
  • vendor/github.com/go-openapi/runtime/.gitignore
  • vendor/github.com/go-openapi/runtime/.golangci.yml
  • vendor/github.com/go-openapi/runtime/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/runtime/LICENSE
  • vendor/github.com/go-openapi/runtime/README.md
  • vendor/github.com/go-openapi/runtime/bytestream.go
  • vendor/github.com/go-openapi/runtime/client/auth_info.go
  • vendor/github.com/go-openapi/runtime/client/keepalive.go
  • vendor/github.com/go-openapi/runtime/client/opentelemetry.go
  • vendor/github.com/go-openapi/runtime/client/request.go
  • vendor/github.com/go-openapi/runtime/client/response.go
  • vendor/github.com/go-openapi/runtime/client/runtime.go
  • vendor/github.com/go-openapi/runtime/client_auth_info.go
  • vendor/github.com/go-openapi/runtime/client_operation.go
  • vendor/github.com/go-openapi/runtime/client_request.go
  • vendor/github.com/go-openapi/runtime/client_response.go
  • vendor/github.com/go-openapi/runtime/constants.go
  • vendor/github.com/go-openapi/runtime/csv.go
  • vendor/github.com/go-openapi/runtime/csv_options.go
  • vendor/github.com/go-openapi/runtime/discard.go
  • vendor/github.com/go-openapi/runtime/file.go
  • vendor/github.com/go-openapi/runtime/headers.go
  • vendor/github.com/go-openapi/runtime/interfaces.go
  • vendor/github.com/go-openapi/runtime/json.go
  • vendor/github.com/go-openapi/runtime/logger/logger.go
  • vendor/github.com/go-openapi/runtime/logger/standard.go
  • vendor/github.com/go-openapi/runtime/middleware/context.go
  • vendor/github.com/go-openapi/runtime/middleware/denco/LICENSE
  • vendor/github.com/go-openapi/runtime/middleware/denco/README.md
  • vendor/github.com/go-openapi/runtime/middleware/denco/router.go
  • vendor/github.com/go-openapi/runtime/middleware/denco/server.go
  • vendor/github.com/go-openapi/runtime/middleware/denco/util.go
  • vendor/github.com/go-openapi/runtime/middleware/doc.go
  • vendor/github.com/go-openapi/runtime/middleware/header/header.go
  • vendor/github.com/go-openapi/runtime/middleware/negotiate.go
  • vendor/github.com/go-openapi/runtime/middleware/not_implemented.go
  • vendor/github.com/go-openapi/runtime/middleware/operation.go
  • vendor/github.com/go-openapi/runtime/middleware/parameter.go
  • vendor/github.com/go-openapi/runtime/middleware/rapidoc.go
  • vendor/github.com/go-openapi/runtime/middleware/redoc.go
  • vendor/github.com/go-openapi/runtime/middleware/request.go
  • vendor/github.com/go-openapi/runtime/middleware/router.go
  • vendor/github.com/go-openapi/runtime/middleware/security.go
  • vendor/github.com/go-openapi/runtime/middleware/spec.go
  • vendor/github.com/go-openapi/runtime/middleware/swaggerui.go
  • vendor/github.com/go-openapi/runtime/middleware/swaggerui_oauth2.go
  • vendor/github.com/go-openapi/runtime/middleware/ui_options.go
  • vendor/github.com/go-openapi/runtime/middleware/untyped/api.go
  • vendor/github.com/go-openapi/runtime/middleware/validation.go
  • vendor/github.com/go-openapi/runtime/request.go
  • vendor/github.com/go-openapi/runtime/security/authenticator.go
  • vendor/github.com/go-openapi/runtime/security/authorizer.go
  • vendor/github.com/go-openapi/runtime/statuses.go
  • vendor/github.com/go-openapi/runtime/text.go
  • vendor/github.com/go-openapi/runtime/values.go
  • vendor/github.com/go-openapi/runtime/xml.go
  • vendor/github.com/go-openapi/runtime/yamlpc/yaml.go
  • vendor/github.com/go-openapi/spec/.editorconfig
  • vendor/github.com/go-openapi/spec/.gitignore
  • vendor/github.com/go-openapi/spec/.golangci.yml
  • vendor/github.com/go-openapi/spec/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/spec/LICENSE
  • vendor/github.com/go-openapi/spec/README.md
  • vendor/github.com/go-openapi/spec/cache.go
  • vendor/github.com/go-openapi/spec/contact_info.go
  • vendor/github.com/go-openapi/spec/debug.go
  • vendor/github.com/go-openapi/spec/embed.go
  • vendor/github.com/go-openapi/spec/errors.go
  • vendor/github.com/go-openapi/spec/expander.go
  • vendor/github.com/go-openapi/spec/external_docs.go
  • vendor/github.com/go-openapi/spec/header.go
  • vendor/github.com/go-openapi/spec/info.go
  • vendor/github.com/go-openapi/spec/items.go
  • vendor/github.com/go-openapi/spec/license.go
  • vendor/github.com/go-openapi/spec/normalizer.go
  • vendor/github.com/go-openapi/spec/normalizer_nonwindows.go
  • vendor/github.com/go-openapi/spec/normalizer_windows.go
  • vendor/github.com/go-openapi/spec/operation.go
  • vendor/github.com/go-openapi/spec/parameter.go
  • vendor/github.com/go-openapi/spec/path_item.go
  • vendor/github.com/go-openapi/spec/paths.go
  • vendor/github.com/go-openapi/spec/properties.go
  • vendor/github.com/go-openapi/spec/ref.go
  • vendor/github.com/go-openapi/spec/resolver.go
  • vendor/github.com/go-openapi/spec/response.go
  • vendor/github.com/go-openapi/spec/responses.go
  • vendor/github.com/go-openapi/spec/schema.go
  • vendor/github.com/go-openapi/spec/schema_loader.go
  • vendor/github.com/go-openapi/spec/schemas/jsonschema-draft-04.json
  • vendor/github.com/go-openapi/spec/schemas/v2/schema.json
  • vendor/github.com/go-openapi/spec/security_scheme.go
  • vendor/github.com/go-openapi/spec/spec.go
  • vendor/github.com/go-openapi/spec/swagger.go
  • vendor/github.com/go-openapi/spec/tag.go
  • vendor/github.com/go-openapi/spec/url_go19.go
  • vendor/github.com/go-openapi/spec/validations.go
  • vendor/github.com/go-openapi/spec/xml_object.go
  • vendor/github.com/go-openapi/strfmt/.editorconfig
  • vendor/github.com/go-openapi/strfmt/.gitattributes
  • vendor/github.com/go-openapi/strfmt/.gitignore
  • vendor/github.com/go-openapi/strfmt/.golangci.yml
  • vendor/github.com/go-openapi/strfmt/CODE_OF_CONDUCT.md
  • vendor/github.com/go-openapi/strfmt/LICENSE
  • vendor/github.com/go-openapi/strfmt/README.md
  • vendor/github.com/go-openapi/strfmt/bson.go
  • vendor/github.com/go-openapi/strfmt/date.go
  • vendor/github.com/go-openapi/strfmt/default.go
  • vendor/github.com/go-openapi/strfmt/doc.go
  • vendor/github.com/go-openapi/strfmt/duration.go
  • vendor/github.com/go-openapi/strfmt/errors.go
  • vendor/github.com/go-openapi/strfmt/format.go
  • vendor/github.com/go-openapi/strfmt/ifaces.go
  • vendor/github.com/go-openapi/strfmt/mongo.go
  • vendor/github.com/go-openapi/strfmt/time.go
  • vendor/github.com/go-openapi/strfmt/ulid.go
  • vendor/github.com/go-openapi/swag/.codecov.yml
  • vendor/github.com/go-openapi/swag/.golangci.yml
  • vendor/github.com/go-openapi/swag/.mockery.yml
  • vendor/github.com/go-openapi/swag/README.md
  • vendor/github.com/go-openapi/swag/SECURITY.md
  • vendor/github.com/go-openapi/swag/cmdutils/LICENSE
  • vendor/github.com/go-openapi/swag/cmdutils/cmd_utils.go
  • vendor/github.com/go-openapi/swag/cmdutils/doc.go
  • vendor/github.com/go-openapi/swag/cmdutils_iface.go
  • vendor/github.com/go-openapi/swag/conv/LICENSE
  • vendor/github.com/go-openapi/swag/conv/convert.go
  • vendor/github.com/go-openapi/swag/conv/convert_types.go
  • vendor/github.com/go-openapi/swag/conv/doc.go
  • vendor/github.com/go-openapi/swag/conv/format.go
  • vendor/github.com/go-openapi/swag/conv/sizeof.go
  • vendor/github.com/go-openapi/swag/conv/type_constraints.go
  • vendor/github.com/go-openapi/swag/conv_iface.go
  • vendor/github.com/go-openapi/swag/convert.go
  • vendor/github.com/go-openapi/swag/convert_types.go
  • vendor/github.com/go-openapi/swag/doc.go
  • vendor/github.com/go-openapi/swag/errors.go
  • vendor/github.com/go-openapi/swag/fileutils/LICENSE
  • vendor/github.com/go-openapi/swag/fileutils/doc.go
  • vendor/github.com/go-openapi/swag/fileutils/file.go
  • vendor/github.com/go-openapi/swag/fileutils/path.go
  • vendor/github.com/go-openapi/swag/fileutils_iface.go
  • vendor/github.com/go-openapi/swag/initialism_index.go
  • vendor/github.com/go-openapi/swag/json.go
  • vendor/github.com/go-openapi/swag/jsonname/LICENSE
  • vendor/github.com/go-openapi/swag/jsonname/doc.go
  • vendor/github.com/go-openapi/swag/jsonname/name_provider.go
  • vendor/github.com/go-openapi/swag/jsonname_iface.go
  • vendor/github.com/go-openapi/swag/jsonutils/LICENSE
  • vendor/github.com/go-openapi/swag/jsonutils/README.md
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/doc.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/ifaces/doc.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/ifaces/ifaces.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/ifaces/registry_iface.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/registry.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/adapter.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/doc.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/lexer.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/ordered_map.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/pool.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/register.go
  • vendor/github.com/go-openapi/swag/jsonutils/adapters/stdlib/json/writer.go
  • vendor/github.com/go-openapi/swag/jsonutils/concat.go
  • vendor/github.com/go-openapi/swag/jsonutils/doc.go
  • vendor/github.com/go-openapi/swag/jsonutils/json.go
  • vendor/github.com/go-openapi/swag/jsonutils/ordered_map.go
  • vendor/github.com/go-openapi/swag/jsonutils_iface.go
  • vendor/github.com/go-openapi/swag/loading/LICENSE
  • vendor/github.com/go-openapi/swag/loading/doc.go
  • vendor/github.com/go-openapi/swag/loading/errors.go
  • vendor/github.com/go-openapi/swag/loading/json.go
  • vendor/github.com/go-openapi/swag/loading/loading.go
  • vendor/github.com/go-openapi/swag/loading/options.go
  • vendor/github.com/go-openapi/swag/loading/yaml.go
  • vendor/github.com/go-openapi/swag/loading_iface.go
  • vendor/github.com/go-openapi/swag/mangling/BENCHMARK.md
  • vendor/github.com/go-openapi/swag/mangling/LICENSE
  • vendor/github.com/go-openapi/swag/mangling/doc.go
  • vendor/github.com/go-openapi/swag/mangling/initialism_index.go
  • vendor/github.com/go-openapi/swag/mangling/name_lexem.go
  • vendor/github.com/go-openapi/swag/mangling/name_mangler.go
  • vendor/github.com/go-openapi/swag/mangling/options.go
  • vendor/github.com/go-openapi/swag/mangling/pools.go
  • vendor/github.com/go-openapi/swag/mangling/split.go
  • vendor/github.com/go-openapi/swag/mangling/string_bytes.go
  • vendor/github.com/go-openapi/swag/mangling/util.go
  • vendor/github.com/go-openapi/swag/mangling_iface.go
  • vendor/github.com/go-openapi/swag/name_lexem.go
  • vendor/github.com/go-openapi/swag/net.go
  • vendor/github.com/go-openapi/swag/netutils/LICENSE
  • vendor/github.com/go-openapi/swag/netutils/doc.go
  • vendor/github.com/go-openapi/swag/netutils/net.go
  • vendor/github.com/go-openapi/swag/netutils_iface.go
  • vendor/github.com/go-openapi/swag/split.go
  • vendor/github.com/go-openapi/swag/stringutils/LICENSE
  • vendor/github.com/go-openapi/swag/stringutils/collection_formats.go
  • vendor/github.com/go-openapi/swag/stringutils/doc.go
  • vendor/github.com/go-openapi/swag/stringutils/strings.go
  • vendor/github.com/go-openapi/swag/stringutils_iface.go
  • vendor/github.com/go-openapi/swag/typeutils/LICENSE
  • vendor/github.com/go-openapi/swag/typeutils/doc.go
  • vendor/github.com/go-openapi/swag/typeutils/types.go
  • vendor/github.com/go-openapi/swag/typeutils_iface.go
  • vendor/github.com/go-openapi/swag/util.go
  • vendor/github.com/go-openapi/swag/yaml.go
  • vendor/github.com/go-openapi/swag/yamlutils/LICENSE
  • vendor/github.com/go-openapi/swag/yamlutils/doc.go
  • vendor/github.com/go-openapi/swag/yamlutils/errors.go
  • vendor/github.com/go-openapi/swag/yamlutils/ordered_map.go
  • vendor/github.com/go-openapi/swag/yamlutils/yaml.go
  • vendor/github.com/go-openapi/swag/yamlutils_iface.go

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci openshift-ci bot requested review from Kaustubh-pande and manusa April 14, 2026 06:52
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 14, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: saswatamcode
Once this PR has been reviewed and has the lgtm label, please assign manusa for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Comment thread docs/METRICS.md
Comment thread pkg/toolsets/observability/helpers.go
@matzew
Copy link
Copy Markdown
Member

matzew commented Apr 14, 2026

We have no evals / mcpchecker here - but I saw this based on discussions on slack

rhobs/obs-mcp#34

CC @Cali0707

Comment thread docs/OBSERVABILITY.md Outdated
@matzew
Copy link
Copy Markdown
Member

matzew commented Apr 14, 2026

One of the things to have in mind when using the go modules, instead of directly prviding tools there is that it might be easier to miss tool renaming.

E.g. the old version used to have: prometheus_query, prometheus_query_range and alertmanager_alerts. While new version (the module) has these: list_metrics, execute_instant_query, execute_range_query, show_timeseries, get_label_names, get_label_values, get_series, get_alerts and get_silences.

…vability mcp)

Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
Comment thread go.mod Outdated
github.com/miekg/dns v1.1.68
github.com/modelcontextprotocol/go-sdk v1.5.0
github.com/prometheus/client_golang v1.23.2
github.com/rhobs/obs-mcp v0.1.0-rc.1.0.20260414161157-6067303e23c9
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any idea when the actual release will be out ? 😅

@matzew
Copy link
Copy Markdown
Member

matzew commented Apr 16, 2026

Besides the SSRF comment, but confirmed by @tremes to accept this, this

LGTM!

Leaving the final approval to @Cali0707 regarding evals. I saw the referenced PR got merged, though

Also CC @mvinkler for QE aspects here

Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
@saswatamcode
Copy link
Copy Markdown
Member Author

Thanks! Also pinned the module to latest release rc

@mvinkler
Copy link
Copy Markdown

@saswatamcode no evals for testing the obs-mcp toolset?

@saswatamcode
Copy link
Copy Markdown
Member Author

@mvinkler evals are here rhobs/obs-mcp#34

@mvinkler
Copy link
Copy Markdown

@matzew is there any convention regarding toolset naming? This one is now called obs-mcp, while no other has -mcp suffix.

@matzew
Copy link
Copy Markdown
Member

matzew commented Apr 16, 2026 via email

saswatamcode added a commit to saswatamcode/obs-mcp that referenced this pull request Apr 16, 2026
As per conventions in openshift-mcp-server, we need to rename the
toolset to something more suitable as per
openshift/openshift-mcp-server#226 (comment)

Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
Comment thread README.md Outdated
- `filter` (`string`) - Optional filter using Alertmanager filter syntax. Examples: 'alertname=Watchdog', 'severity=critical', 'namespace=openshift-monitoring'
- `inhibited` (`boolean`) - Include inhibited alerts in the results. Default: false
- `silenced` (`boolean`) - Include silenced alerts in the results. Default: false
<summary>obs-mcp</summary>
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be also renamed back to observability?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is generated

@mvinkler
Copy link
Copy Markdown

Due to unified testing approach, I need the evals to be also in this repo. At least in the release-0.3 branch.

@matzew
Copy link
Copy Markdown
Member

matzew commented Apr 16, 2026

Due to unified testing approach, I need the evals to be also in this repo. At least in the release-0.3 branch.

would be good if those evals were part of this repo.

CC @Cali0707

Comment thread docs/configuration.md Outdated
| helm | Tools for managing Helm charts and releases | |
| kcp | Manage kcp workspaces and multi-tenancy features | |
| kubevirt | KubeVirt virtual machine management tools, check the [KubeVirt documentation](https://github.com/containers/kubernetes-mcp-server/blob/main/docs/kubevirt.md) for more details. | |
| obs-mcp | Toolset for querying Prometheus and Alertmanager endpoints in efficient ways. | |
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we mention Thanos also?

@mvinkler
Copy link
Copy Markdown

From https://github.com/rhobs/obs-mcp/tree/main: obs-mcp has many new flags, for example:

go run ./cmd/obs-mcp/ --listen 127.0.0.1:9100 --auth-mode kubeconfig --metrics-backend thanos --insecure --guardrails=none

These flags will be merged to the openshift-mcp-server? What is their description?

saswatamcode added a commit to saswatamcode/obs-mcp that referenced this pull request Apr 16, 2026
As per conventions in openshift-mcp-server, we need to rename the
toolset to something more suitable as per
openshift/openshift-mcp-server#226 (comment)

Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
Signed-off-by: Saswata Mukherjee <saswataminsta@yahoo.com>
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 17, 2026

@saswatamcode: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants