Expose authoring tools through MCP Streamable HTTP #15

Open
opened 2026-09-16 12:05:36 +02:00 by morten-olsen · 0 comments
Owner

Context

Issue #10 delivered the shared authoring-tool contract. After the app-hosted HTTP transport exists, agent clients should be able to consume the same capabilities through MCP Streamable HTTP without another engine implementation.

Scope

  • Implement an MCP Streamable HTTP adapter over AuthoringToolModule and the app-hosted HTTP server.
  • Map each stable authoring tool definition and JSON Schema to MCP tool discovery and invocation.
  • Preserve structured diagnostics and actionable error codes across MCP responses.
  • Reuse the HTTP server's pairing, revocation, read/write/test scopes, limits, lifecycle, and content-free auditing.
  • Handle MCP session initialization, protocol-version negotiation, cancellation, reconnects, and bounded concurrent requests.
  • Document the connection information a desktop MCP client needs without exposing credentials in logs or UI exports.

Non-goals

  • Do not add a second workflow/registry/testing implementation.
  • Do not add an in-app model provider or agent conversation UI.
  • Do not expose resources, prompts, production execution, arbitrary code, or raw databases unless separately justified.

Acceptance

  • A paired MCP client can discover the authoring tools from #10 and invoke read, validated mutation, and deterministic fixture-test operations.
  • MCP schemas and results remain compatible with the transport-neutral contract.
  • Wrong-scope, revoked, malformed, oversized, cancelled, and expired-session calls fail distinctly without partial mutation.
  • Disabling the hosted server also disables MCP reachability.
  • Protocol-level integration tests cover initialization, discovery, one end-to-end authoring operation, cancellation, and authorization rejection.

Dependencies

Depends on #10 and #16.

## Context Issue #10 delivered the shared authoring-tool contract. After the app-hosted HTTP transport exists, agent clients should be able to consume the same capabilities through MCP Streamable HTTP without another engine implementation. ## Scope - Implement an MCP Streamable HTTP adapter over `AuthoringToolModule` and the app-hosted HTTP server. - Map each stable authoring tool definition and JSON Schema to MCP tool discovery and invocation. - Preserve structured diagnostics and actionable error codes across MCP responses. - Reuse the HTTP server's pairing, revocation, read/write/test scopes, limits, lifecycle, and content-free auditing. - Handle MCP session initialization, protocol-version negotiation, cancellation, reconnects, and bounded concurrent requests. - Document the connection information a desktop MCP client needs without exposing credentials in logs or UI exports. ## Non-goals - Do not add a second workflow/registry/testing implementation. - Do not add an in-app model provider or agent conversation UI. - Do not expose resources, prompts, production execution, arbitrary code, or raw databases unless separately justified. ## Acceptance - A paired MCP client can discover the authoring tools from #10 and invoke read, validated mutation, and deterministic fixture-test operations. - MCP schemas and results remain compatible with the transport-neutral contract. - Wrong-scope, revoked, malformed, oversized, cancelled, and expired-session calls fail distinctly without partial mutation. - Disabling the hosted server also disables MCP reachability. - Protocol-level integration tests cover initialization, discovery, one end-to-end authoring operation, cancellation, and authorization rejection. ## Dependencies Depends on #10 and #16.
Sign in to join this conversation.
No labels
bug
enhancement
feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
incubator/macros#15
No description provided.