Skip to content

feat(software-catalog-mcp-extras): add full-text search via queryEntities#3540

Open
savitojs wants to merge 1 commit into
redhat-developer:mainfrom
savitojs:feat/catalog-fulltext-search
Open

feat(software-catalog-mcp-extras): add full-text search via queryEntities#3540
savitojs wants to merge 1 commit into
redhat-developer:mainfrom
savitojs:feat/catalog-fulltext-search

Conversation

@savitojs

Copy link
Copy Markdown

The query-catalog-entities action only supports exact-match filters via catalog.getEntities(), making it impossible to find entities by partial name or description. Users must know the exact metadata.name to find anything - searching "argocd" won't find devhub-argo-infra.

The CatalogService interface already exposes queryEntities() with fullTextFilter support, but this plugin never uses it. This PR adds a search input parameter that enables substring matching across name, title, and description.

Changes:

  • Add search input parameter to the tool schema with description clarifying partial/substring matching
  • When search is provided, use catalog.queryEntities() with fullTextFilter targeting metadata.name, metadata.title, and metadata.description
  • The search parameter can be combined with existing exact-match filters (kind, type, owner, lifecycle, tags)
  • When search is not provided, behavior is identical to the current implementation (catalog.getEntities() with exact filters)
  • Update tool description with search examples
  • Add tests for search-only, search+kind combo, verbose+search, and backward compatibility

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

@rhdh-gh-app

rhdh-gh-app Bot commented Jun 23, 2026

Copy link
Copy Markdown

Important

This PR includes changes that affect public-facing API. Please ensure you are adding/updating documentation for new features or behavior.

Changed Packages

Package Name Package Path Changeset Bump Current Version
@red-hat-developer-hub/backstage-plugin-software-catalog-mcp-extras workspaces/mcp-integrations/plugins/software-catalog-mcp-extras minor v0.2.4

@savitojs savitojs force-pushed the feat/catalog-fulltext-search branch 3 times, most recently from 3df7764 to de740f6 Compare June 23, 2026 04:37
…ties

The query-catalog-entities action only supports exact-match filters via
catalog.getEntities(), making it impossible to find entities by partial
name or description. Users must know the exact metadata.name to find
anything.

Add a 'search' input parameter that uses catalog.queryEntities() with
fullTextFilter to match against metadata.name, metadata.title, and
metadata.description. The search parameter can be combined with existing
exact-match filters (kind, type, owner, lifecycle, tags).

When search is not provided, behavior is identical to the current
implementation (catalog.getEntities with exact filters).

Signed-off-by: Savitoj Singh <sasingh@redhat.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@savitojs savitojs force-pushed the feat/catalog-fulltext-search branch from de740f6 to 2ca48a8 Compare June 23, 2026 04:41
@sonarqubecloud

Copy link
Copy Markdown

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant