Skip to content

Consume Platform-governed MCP skill endpoints as Maestro tool sources #74

Description

@haasonsaas

From the Maestro/platform integration review using gh on 2026-04-22.

Reviewed heads:

  • ae6e88a
  • evalops/platform@7b003938349939052f90ae41241599993a7c06c9

Problem

Maestro can bridge MCP tools locally, while Platform is growing agent-mcp, governed skill bundles, policy checks, and metering. Platform has issues for exposing skills as policy-gated MCP endpoints, but Maestro does not yet have a consumption issue that turns those endpoints into the default controlled tool plane.

Scope

  • Add Platform MCP registry/endpoint discovery to Maestro's MCP/tool registration path.
  • Register selected Platform skill endpoints as namespaced Maestro tools with stable capability metadata, skill ids, versions, and provenance.
  • Forward EvalOps workspace/session/run headers while preserving upstream-owned Mcp-Session-Id semantics.
  • Surface policy, approval, auth, and rate-limit denials as structured tool results and events rather than generic tool crashes.
  • Attach skill/tool identifiers to tool telemetry, wide turn events, meter payloads, and future maestro.events.skill.* / maestro.events.tool_call.* events.
  • Keep existing local MCP configuration working for non-Platform users.

Acceptance Criteria

  • A Maestro config can load at least one Platform-governed MCP skill endpoint and invoke it through the normal tool path.
  • The invocation carries workspace/session/run correlation fields into Platform agent-mcp.
  • Denied or approval-required tool calls are visible in Maestro UI/headless output and publish correlated telemetry/events.
  • Tests cover local MCP only, Platform endpoint success, and Platform endpoint denied/unavailable cases.

Related: evalops/platform#717, evalops/platform#740, evalops/platform#748, evalops/platform#763, evalops/platform#765, #49, #73.

Metadata

Metadata

Assignees

No one assigned

    Labels

    architecture-reviewCross-service architecture review requestedenhancementNew feature or request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions