gsxdsm
3cd023fa43
FN-8491: add declarative plugin MCP server registrations
Enable plugins to declare per-project MCP server registrations.
- Add plugin MCP server contribution types, loading, and resolution across core and engine runtimes.
- Expose resolved plugin registrations through project configuration APIs and MCP settings UI.
- Document the declarative contribution API and add release metadata and regression coverage.
Files changed:
.changeset/plugin-mcp-servers.md | 7 ++
docs/PLUGIN_AUTHORING.md | 17 +++++
docs/mcp.md | 4 ++
docs/settings-reference.md | 4 ++
packages/core/src/__tests__/mcp-config.test.ts | 33 +++++++++
.../__tests__/plugin-contribution-types.test.ts | 16 +++++
.../__tests__/plugin-loader-single-load.test.ts | 23 +++++++
packages/core/src/index.gate.ts | 3 +
packages/core/src/index.ts | 3 +
packages/core/src/mcp-config.ts | 37 ++++++++--
packages/core/src/plugin-loader.ts | 24 +++++++
packages/core/src/plugin-mcp-servers.ts | 78 ++++++++++++++++++++++
packages/core/src/plugin-types.ts | 15 ++++-
packages/core/src/types.ts | 2 +-
.../__tests__/SettingsModal.mcp.test.tsx | 34 +++++++++-
.../settings/sections/McpServersCard.tsx | 52 ++++++++++-----
.../settings/sections/ProjectMcpSection.tsx | 31 ++++++++-
.../register-config-mcp-pi-settings-routes.test.ts | 18 ++++-
packages/dashboard/src/routes/context.ts | 71 +++++++++++++++++++-
.../register-config-mcp-pi-settings-routes.ts | 30 ++++++++-
.../engine/src/__tests__/mcp-resolution.test.ts | 20 ++++++
packages/engine/src/mcp-resolution.ts | 15 ++++-
packages/engine/src/plugin-runner.ts | 38 +++++++++++
packages/engine/src/runtimes/in-process-runtime.ts | 23 +++++++
packages/plugin-sdk/src/index.ts | 1 +
25 files changed, 563 insertions(+), 36 deletions(-)
Fusion-Task-Id: FN-8491
Fusion-Task-Lineage: be7e22fa-5776-4b3d-9fd1-a873799e6427
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-22 15:25:20 -07:00
..
2026-07-22 14:42:04 -07:00
2026-07-16 14:08:43 -07:00
2026-07-22 15:25:20 -07:00
2026-07-02 11:38:35 -07:00
2026-07-18 16:08:14 -07:00
2026-06-26 17:38:41 -07:00
2026-07-15 18:07:37 -07:00
2026-06-26 17:38:41 -07:00
2026-07-20 14:59:22 -07:00
2026-07-13 13:58:35 -07:00
2026-07-17 13:31:42 -07:00
2026-07-10 21:36:43 -07:00
2026-07-19 18:45:27 -07:00
2026-06-04 23:39:07 -07:00
2026-07-12 09:56:26 -07:00
2026-07-14 22:13:30 -07:00
2026-07-20 12:32:01 -07:00
2026-07-17 12:00:26 -07:00
2026-07-13 19:07:58 -07:00
2026-07-03 21:45:20 -07:00
2026-06-05 03:56:29 -07:00
2026-06-15 02:30:41 -07:00
2026-06-05 03:41:54 -07:00
2026-07-02 15:00:40 -07:00
2026-07-09 19:58:03 -07:00
2026-07-19 18:59:28 -07:00
2026-07-19 18:59:36 -07:00
2026-07-13 23:16:36 -07:00
2026-06-29 23:17:49 -07:00
2026-07-15 10:07:20 -07:00
2026-07-15 19:29:02 -07:00
2026-06-30 00:03:37 -07:00
2026-07-15 20:24:49 -07:00
2026-06-10 10:34:36 -07:00
2026-07-21 17:14:30 -07:00
2026-07-16 09:33:20 -07:00
2026-07-19 12:09:12 -07:00
2026-07-05 11:31:48 -07:00
2026-07-20 08:49:28 -07:00
2026-07-02 19:01:09 -07:00
2026-07-15 20:24:49 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 12:34:35 -07:00
2026-07-15 19:07:51 -07:00
2026-07-02 11:38:34 -07:00
2026-07-15 21:58:46 -07:00
2026-07-13 23:16:36 -07:00
2026-07-09 19:58:03 -07:00
2026-07-07 22:04:55 -07:00
2026-07-18 13:18:08 -07:00
2026-07-17 13:31:42 -07:00
2026-07-19 18:37:45 -07:00
2026-07-13 19:07:58 -07:00
2026-07-14 00:12:22 -07:00
2026-07-19 18:45:27 -07:00
2026-06-15 20:34:52 -07:00
2026-07-14 22:16:16 -07:00
2026-07-14 18:47:53 -07:00
2026-07-19 21:04:43 -07:00
2026-07-22 13:46:08 -07:00
2026-07-14 08:16:42 -07:00
2026-07-14 22:16:16 -07:00
2026-07-19 15:45:45 -07:00
2026-07-14 08:18:52 -07:00
2026-07-14 22:16:16 -07:00
2026-06-27 12:25:53 -07:00
2026-07-21 10:04:19 -07:00
2026-07-22 13:47:58 -07:00
2026-07-15 10:24:30 -07:00
2026-06-28 01:17:22 -07:00
2026-06-16 15:08:24 -07:00
2026-07-21 15:30:31 -07:00
2026-07-21 17:08:44 -07:00
2026-07-02 14:31:16 -07:00
2026-07-18 10:55:50 -07:00
2026-07-19 20:42:05 -07:00
2026-07-18 14:23:14 -07:00
2026-07-18 17:06:34 -07:00
2026-07-14 22:13:30 -07:00
2026-07-18 16:18:15 -07:00
2026-07-20 09:35:55 -07:00
2026-07-17 12:00:26 -07:00
2026-07-21 20:40:55 -07:00
2026-07-02 11:38:35 -07:00
2026-07-15 10:38:04 -07:00
2026-07-18 13:50:58 -07:00
2026-07-14 18:47:53 -07:00
2026-07-01 23:44:05 -07:00
2026-07-20 13:40:50 -07:00
2026-07-08 10:06:42 -07:00
2026-07-10 23:42:10 -07:00
2026-07-17 01:23:32 -07:00
2026-07-13 19:07:58 -07:00
2026-07-19 13:34:25 -07:00
2026-07-21 17:08:44 -07:00
2026-06-21 20:28:33 -07:00