MetricsSink plugin (dev.mcpg.observability.prometheus) — accumulates MetricPoint events and renders Prometheus text-exposition format on demand
This is a metrics sink plugin with 2 tools. Both tools have descriptions, but they are domain-specific and lack LLM-optimization guidance. The 'emit' tool description (67 chars) explains the accumulation behavior but does not state WHEN to call it or what prerequisites exist. The 'render' tool description (145 chars) is better but still lacks clarity on error cases. Neither tool has visible input parameter descriptions in the schema, the 'metric' parameter for 'emit' has a type hint ('MetricPoint') but no description explaining what fields it expects or how to construct it. The 'render' tool accepts no parameters, which is correct, but the overall schema documentation is minimal. No output schemas are documented. This is a plugin designed for operator/gateway integration, not LLM agent interaction, which explains the gap between tool definitions and agentic patterns.
updates the registry. Counter values accumulate; Gauges replace; Histograms append observations and update count + sum.
emits the Prometheus text-exposition v0.0.4 format. Synchronous — operators call this from an http_route plugin or the gateway's /metrics route handler.
No parameter descriptions for 'emit' tool. The 'metric' parameter is typed as 'MetricPoint' but lacks a description explaining what fields it contains, how to construct it, or what happens on type mismatch.
No output schemas documented for either tool. Callers cannot know what 'emit' returns (success/error?) or what structure 'render' produces (raw string? JSON? metadata?).
Tool descriptions lack WHEN/WHY guidance. 'emit' does not explain when to call it vs batching metrics, and 'render' does not clarify whether it is safe to call concurrently or if it blocks.
No error handling guidance. The 'emit' tool description mentions 'metric kind / value mismatch' in code but does not document what error the tool returns or how to recover.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
Transport mechanism unknown. Cargo.toml and src/lib.rs show this is a plugin using 'mcpg-plugin-sdk' and 'mcpg-plugin-protocol', not standard MCP. Cannot assess protocol readiness without knowing how it communicates.