docs: clarify auth and mcp ui limits
This commit is contained in:
@@ -238,6 +238,9 @@ implementation state.
|
|||||||
available through MCP-backed server admin, JSON-RPC, and CLI. Summaries show
|
available through MCP-backed server admin, JSON-RPC, and CLI. Summaries show
|
||||||
ids, schemes, metadata, and payload keys only; secret payload values remain
|
ids, schemes, metadata, and payload keys only; secret payload values remain
|
||||||
hidden.
|
hidden.
|
||||||
|
Not done: auth is still compatibility-grade. There is no auth mutation UI/CLI,
|
||||||
|
OAuth flow, production secret manager, provider-specific display model, or
|
||||||
|
full removal of the legacy MCP auth record shape yet.
|
||||||
- Completed: `wf run watch` starts run progress UX with polling over existing
|
- Completed: `wf run watch` starts run progress UX with polling over existing
|
||||||
`inspect_run` and optional bounded `read_run_trace`. SSE/WebSocket/MCP
|
`inspect_run` and optional bounded `read_run_trace`. SSE/WebSocket/MCP
|
||||||
progress remains deferred until polling UX proves insufficient.
|
progress remains deferred until polling UX proves insufficient.
|
||||||
@@ -251,6 +254,11 @@ implementation state.
|
|||||||
as workflow capabilities. The current `wf_mcp` package still contains both
|
as workflow capabilities. The current `wf_mcp` package still contains both
|
||||||
roles plus compatibility entrypoints; new server/transport work should avoid
|
roles plus compatibility entrypoints; new server/transport work should avoid
|
||||||
depending on that combined facade.
|
depending on that combined facade.
|
||||||
|
MCP UI/App metadata is source metadata only for now. Do not advertise widget
|
||||||
|
or MCP Apps support through workflow transports until a dedicated MCP
|
||||||
|
frontend transport owns iframe hosting, `ui://` resources, app-only tool
|
||||||
|
calls, and bridge semantics. Raw proxy/debug paths may expose upstream MCP
|
||||||
|
behavior explicitly, but that is not the durable workflow surface.
|
||||||
- Cleanup candidate: consolidate store/source registry id validation patterns
|
- Cleanup candidate: consolidate store/source registry id validation patterns
|
||||||
(`SOURCE_REGISTRY_ID_PATTERN`, `STORE_ID_PATTERN`) only after another package
|
(`SOURCE_REGISTRY_ID_PATTERN`, `STORE_ID_PATTERN`) only after another package
|
||||||
needs the same rule. Today they intentionally stay close to their stores.
|
needs the same rule. Today they intentionally stay close to their stores.
|
||||||
|
|||||||
@@ -80,6 +80,29 @@ legacy/source-specific input to normalize, not a permanent peer config family.
|
|||||||
can construct the same application boundary with required stores and an explicit
|
can construct the same application boundary with required stores and an explicit
|
||||||
runtime/source implementation.
|
runtime/source implementation.
|
||||||
|
|
||||||
|
## MCP UI/App Support Policy
|
||||||
|
|
||||||
|
MCP UI metadata is not workflow-server capability by itself. Upstream MCP tools
|
||||||
|
may expose `_meta.ui` / `ui://...` resources, but rendering those resources is a
|
||||||
|
host/frontend responsibility, not a workflow runtime responsibility.
|
||||||
|
|
||||||
|
Until a dedicated MCP frontend transport owns the full host behavior, do not
|
||||||
|
advertise MCP Apps/UI support to clients. Supporting it requires more than
|
||||||
|
passing metadata through:
|
||||||
|
|
||||||
|
- serving `ui://` resources and any dependent assets from a stable origin
|
||||||
|
- sandboxed iframe hosting
|
||||||
|
- a JSON-RPC `postMessage` / app bridge
|
||||||
|
- app-only tool visibility and calls
|
||||||
|
- CSP/domain policy
|
||||||
|
- widget state and teardown semantics
|
||||||
|
|
||||||
|
`wf_sources_mcp` / current upstream MCP source code may preserve UI metadata as
|
||||||
|
observed source metadata, but it must not imply that `wf_server` can render or
|
||||||
|
host widgets. `wf_transport_mcp` may later implement a real host bridge. Raw
|
||||||
|
MCP proxy/debug modes can expose upstream behavior explicitly, but that path is
|
||||||
|
not the durable workflow surface.
|
||||||
|
|
||||||
## Why Not Wrap WfMcpService
|
## Why Not Wrap WfMcpService
|
||||||
|
|
||||||
`WfMcpService` is still a compatibility facade for MCP broker concerns:
|
`WfMcpService` is still a compatibility facade for MCP broker concerns:
|
||||||
|
|||||||
@@ -19,6 +19,12 @@ diagnostics and source registry apply summaries. Slice 3 exposes read-only auth
|
|||||||
admin summaries without secret payload values. Auth mutation surfaces and
|
admin summaries without secret payload values. Auth mutation surfaces and
|
||||||
provider-specific auth unions are future slices.
|
provider-specific auth unions are future slices.
|
||||||
|
|
||||||
|
This is not a complete auth product yet. The implemented runtime path only wires
|
||||||
|
existing MCP-compatible auth records into source calls, diagnostics, and
|
||||||
|
read-only admin summaries. There is still no user-facing auth creation/mutation
|
||||||
|
surface, OAuth flow, production secret manager, provider-specific display model,
|
||||||
|
or full retirement of the legacy `wf_mcp.models.AuthRecord` compatibility type.
|
||||||
|
|
||||||
## Current State
|
## Current State
|
||||||
|
|
||||||
Existing MCP runtime auth is connection-id keyed:
|
Existing MCP runtime auth is connection-id keyed:
|
||||||
|
|||||||
Reference in New Issue
Block a user