Skip to content

Group related MCP integrations by family - #1702

Open
altaywtf wants to merge 1 commit into
UsefulSoftwareCo:mainfrom
altaywtf:feat/integration-families
Open

Group related MCP integrations by family#1702
altaywtf wants to merge 1 commit into
UsefulSoftwareCo:mainfrom
altaywtf:feat/integration-families

Conversation

@altaywtf

Copy link
Copy Markdown

Only Google and Microsoft integrations could collapse into provider groups, and MCP integrations had no way to declare a family. Multi-service providers therefore stayed as unrelated flat rows.

  • Fix: carry an optional family through MCP registration, config, and display metadata; group any family with more than one integration.
  • Proof: focused tests cover arbitrary families and MCP metadata, and a self-host browser scenario records two related MCP services collapsing into one family card.

Two related MCP services grouped under one family card

Copilot AI lite review requested due to automatic review settings August 20, 2026 15:17

Copilot AI left a comment

Copy link
Copy Markdown

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 adds first-class “family” metadata for MCP integrations so the integrations catalog can group multiple related MCP services under a single provider family card (beyond the previously hard-coded Google/Microsoft grouping).

Changes:

  • Removed the hard-coded multi-service family allowlist and now treat any non-empty integration.family as eligible for grouping (only grouping when a family has >1 integration).
  • Extended MCP server registration/config schemas and plumbing to carry an optional family through to persisted config and catalog display metadata.
  • Added focused unit tests and an e2e scenario verifying two related MCP services collapse into a single family group in the UI.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.

Show a summary per file
File Description
packages/react/src/lib/integration-grouping.ts Generalizes grouping to any declared family (no hard-coded allowlist).
packages/react/src/lib/integration-grouping.test.ts Adds coverage for grouping arbitrary families and clarifies an existing test name.
packages/plugins/mcp/src/sdk/types.ts Adds optional family to MCP integration config schemas.
packages/plugins/mcp/src/sdk/plugin.ts Plumbs family from MCP server input → stored config → catalog display descriptor.
packages/plugins/mcp/src/sdk/plugin.test.ts Verifies MCP family is projected into the integration catalog response.
packages/plugins/mcp/src/sdk/describe-auth-methods.test.ts Verifies display metadata includes family for remote and stdio configs when present.
packages/plugins/mcp/src/api/handlers.ts Passes optional family through API payload → MCP server input.
packages/plugins/mcp/src/api/group.ts Extends add-server HTTP payload schemas with optional family.
e2e/scenarios/integration-families.test.ts Browser scenario proving two MCP services with the same family collapse into one card.
.changeset/mcp-integration-families.md Publishes the MCP plugin change as a patch release note.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

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.

2 participants