Azure / Azure/aks-mcp

Inspektor Gadget: Expand/improve gadget catalog

Open
#154 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
140
Forks
45
Avg merge
4d 3h
Merged PRs (30d)
2

Description

Currently, we support a [limited number of gadgets](https://github.com/Azure/aks-mcp/blob/main/internal/components/inspektorgadget/const.go#L51) providing real-time observability for common Kubernetes use cases. This works well for getting started, but we should also have a generic way to run any supported gadget. Where users can provide more context using their prompts:

For example:

> Can you please start a gadget with image ghcr.io/inspektor-gadget/gadget/trace_oomkill in the demo namespace?
>

While we will continue to expand the list of built-in gadgets based on [official gadgets](https://artifacthub.io/packages/search?kind=22&verified_publisher=true&official=true&cncf=true&sort=relevance&page=1). However, adding a generic way to run gadgets will enable people to use custom observability tools without waiting for them to be added to the default list.

## Implementation option:
- Add a `gadget_image` parameter alongside the existing config here: https://github.com/Azure/aks-mcp/blob/main/internal/components/inspektorgadget/registry.go#L33
- Enforce that only one of `gadget_image` or `gadget_name` can be specified
- Start/Run gadget respecting the generic Kubernetes filtering (or allow users to [specify custom filtering](https://inspektor-gadget.io/docs/latest/spec/operators/filter))

**Note**: By default, Inspektor Gadget only runs gadgets signed by the Inspektor Gadget team, so only official gadgets will work out of the box. If needed, users can customize their IG installation to allow running additional gadgets.

Contributor guide

Open the contributing guide

Research direction

Start in internal/components/inspektorgadget/const.go and registry.go to understand the built-in gadget registry and existing configuration. Review Inspektor Gadget's filtering documentation and determine how generic Kubernetes filtering or custom filters should be passed. Done means users can provide either gadget_image or gadget_name, never both, and run supported custom gadgets.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
infrastructure, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.