Skip to content

Conversation

@yrobla
Copy link
Contributor

@yrobla yrobla commented Oct 31, 2025

Design and implement the VirtualMCPCompositeToolDefinition CRD for defining reusable composite workflows that can be referenced by multiple VirtualMCPServer instances.

Closes: #2433

Design and implement the VirtualMCPCompositeToolDefinition CRD for defining reusable composite workflows that can be referenced by multiple VirtualMCPServer instances.
@yrobla yrobla requested a review from Copilot October 31, 2025 10:08
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new Kubernetes CRD VirtualMCPCompositeToolDefinition that enables defining reusable composite workflows for Virtual MCP Servers, allowing complex multi-step operations to be referenced across multiple VirtualMCPServer instances.

  • Adds comprehensive documentation guide for the new CRD with examples and best practices
  • Implements CRD definition with validation rules for workflow structure, parameters, steps, and dependencies
  • Creates validation webhook with cycle detection, template validation, and error handling checks

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
docs/operator/virtualmcpcompositetooldefinition-guide.md Comprehensive user guide with examples, validation rules, and troubleshooting
deploy/charts/operator-crds/crds/toolhive.stacklok.dev_virtualmcpservers.yaml Adds compositeToolRefs field to reference composite tool definitions
deploy/charts/operator-crds/crds/toolhive.stacklok.dev_virtualmcpcompositetooldefinitions.yaml New CRD definition with OpenAPI schema validation
cmd/thv-operator/api/v1alpha1/virtualmcpserver_types.go Adds CompositeToolRefs field to VirtualMCPServerSpec
cmd/thv-operator/api/v1alpha1/virtualmcpcompositetooldefinition_types.go Type definitions for the new CRD including spec, status, and supporting types
cmd/thv-operator/api/v1alpha1/virtualmcpcompositetooldefinition_webhook.go Validation logic for workflow definitions including cycle detection
cmd/thv-operator/api/v1alpha1/virtualmcpcompositetooldefinition_webhook_test.go Comprehensive test coverage for validation logic
cmd/thv-operator/api/v1alpha1/zz_generated.deepcopy.go Generated DeepCopy methods for new types

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from 4cc499b to e399248 Compare October 31, 2025 10:51
@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from e399248 to 8205fe0 Compare October 31, 2025 10:54
@codecov
Copy link

codecov bot commented Oct 31, 2025

Codecov Report

❌ Patch coverage is 59.43060% with 114 lines in your changes missing coverage. Please review.
✅ Project coverage is 54.87%. Comparing base (e2c67bb) to head (5a6af7b).
⚠️ Report is 28 commits behind head on main.

Files with missing lines Patch % Lines
...lpha1/virtualmcpcompositetooldefinition_webhook.go 71.73% 54 Missing and 11 partials ⚠️
cmd/thv-operator/main.go 0.00% 39 Missing ⚠️
...-operator/api/v1alpha1/virtualmcpserver_webhook.go 0.00% 10 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2412      +/-   ##
==========================================
+ Coverage   54.54%   54.87%   +0.33%     
==========================================
  Files         264      274      +10     
  Lines       25351    26001     +650     
==========================================
+ Hits        13828    14269     +441     
- Misses      10210    10401     +191     
- Partials     1313     1331      +18     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from 3fb4722 to 822618f Compare October 31, 2025 15:37
@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch 3 times, most recently from 9fc7023 to 3bd909a Compare October 31, 2025 16:46
@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from 3bd909a to 30fca44 Compare October 31, 2025 16:53
@yrobla yrobla requested review from JAORMX and Copilot November 3, 2025 11:51
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 15 out of 15 changed files in this pull request and generated 2 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from 60c464b to 9a42746 Compare November 3, 2025 12:15
@yrobla yrobla force-pushed the feat/add_virtualmcpcompositetooldefinition_crd branch from 9a42746 to 5a6af7b Compare November 3, 2025 14:40
@yrobla yrobla merged commit 028cc6d into main Nov 3, 2025
32 checks passed
@yrobla yrobla deleted the feat/add_virtualmcpcompositetooldefinition_crd branch November 3, 2025 14:58
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.

vMCP: Kubernetes - VirtualMCPCompositeToolDefinition CRD

4 participants