Catalog MCP Plugin#
The Catalog MCP plugin for Backstage provides comprehensive integration with Model Context Protocol (MCP), enabling AI agents and automation tools to discover and query catalog entities programmatically through flexible and powerful query interfaces.
Plugin Components#
Backend Plugin (@terasky/backstage-plugin-catalog-mcp-backend)#
The backend plugin provides MCP actions for: - Querying entities by owner - Searching entities by annotations - Discovering entity types for specific kinds - Filtering entities by kind and type combinations - Building custom queries with flexible filter and field parameters - Integration with Backstage's Catalog API
Learn more about the backend plugin
Documentation Structure#
- Backend Plugin
MCP Actions Integration#
The Catalog MCP plugin provides MCP (Model Context Protocol) actions for programmatic querying of the Backstage Catalog. This enables AI agents and automation tools to:
- Query by Owner: Find all entities owned by specific users or groups
- Search by Annotation: Discover entities with specific metadata annotations
- Discover Entity Types: Explore the taxonomy of your catalog
- Filter by Kind and Type: Find specific entity types (e.g., all service components)
- Custom Queries: Build flexible queries with any combination of filters
Available MCP Actions#
The plugin provides 5 comprehensive MCP actions for catalog querying:
Query Actions#
- get_entities_by_owner
- Find all entities owned by a specific user or group
- Input: Owner reference (user:namespace/name or group:namespace/name)
- Returns full entity data for all matches
-
Use case: "Show me everything the platform team owns"
-
get_entities_by_annotation
- Search for entities with specific annotations
- Input: Annotation key and optional value
- Supports partial matching (key only) or exact matching (key + value)
-
Use case: "Find all entities with GitHub project slug annotation"
-
get_entity_types_for_kind
- Discover all entity types available for a specific kind
- Input: Entity kind (Component, API, Resource, etc.)
- Returns deduplicated list of types
-
Use case: "What types of Components exist in my catalog?"
-
get_all_entities_by_kind_and_type
- Query entities by both kind and type
- Input: Kind and type
- Returns all matching entities
-
Use case: "Show me all service components"
-
get_entities_with_custom_query ⭐
- Most flexible query action
- Input: Custom filter and fields parameters
- Supports complex filtering with multiple criteria
- Supports field selection for performance optimization
- Use case: "Find all components of type service owned by the platform team with a specific annotation"
Integration Requirements#
To enable these MCP actions:
- Install and configure the Catalog MCP backend plugin
- Ensure the Backstage Catalog is populated with entities
- Ensure the MCP server is configured in your Backstage instance
- Configure authentication
- Verify catalog integration is working
Getting Started#
To get started with the Catalog MCP plugin:
- Install and configure the backend plugin
- Ensure the Backstage Catalog is set up
- Configure authentication
- Start using MCP actions with AI agents or automation tools
For detailed installation and configuration instructions, refer to the backend documentation linked above.