Skip to main content
Glama

excalibur_harvest_metrics

Operator-only: one cadence-aware metrics harvest sweep.

Drains due metrics_harvest_job rows (t+15m … t+28d), fetches X non_public_metrics / organic_metrics under each patron's OAuth context, and appends post_metrics_snapshot rows. A missed cadence is permanent data loss — failed jobs retry up to 5 attempts then land in the dead-letter queue; pass requeue_dead_id to retry one. Also runs as phase 3 of every process_scheduled_posts tick.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
npubNoThe OPERATOR's npub (npub1...); this tool is operator-only.
dpop_tokenNo
requeue_dead_idNoOptional dead-letter job UUID to requeue before the sweep.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility and does so richly. It discloses the tool's draining behavior (mutating job rows), the data loss risk on missed cadence, the retry mechanism (5 attempts), dead-letter queue handling, the ability to requeue via requeue_dead_id, and the OAuth context requirement. These are significant behavioral traits beyond simple operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact but dense: a one-line summary, a detailed operation sentence, a failure-mode sentence, and an integration sentence. Every sentence adds critical information (scope, process, risk, retry, automation context) without fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and the presence of an output schema, the description is remarkably complete. It covers the full operational flow, error handling, dead-letter queue, manual requeue option, and integration with process_scheduled_posts. No missing critical context is apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 67% (npub and requeue_dead_id are described; dpop_token is not). The description adds context for requeue_dead_id as a dead-letter job UUID, but does not clarify dpop_token's purpose. This is above 50% coverage, so baseline 3 applies, with only marginal added value for parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a 'cadence-aware metrics harvest sweep' and details its specific actions: draining due metrics_harvest_job rows, fetching non_public_metrics/organic_metrics under OAuth context, and appending post_metrics_snapshot rows. It distinguishes itself from siblings by noting it runs as phase 3 of process_scheduled_posts, separating it from single-post metric fetchers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly marks the tool as 'Operator-only' and describes its cadence-aware batch behavior, implying when it should be used (for harvest sweeps) vs. per-post metric retrieval. It also mentions it runs automatically as phase 3 of process_scheduled_posts, giving context on manual vs. automatic usage. However, it does not explicitly list alternative tools or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.6/5.0
Disambiguation5/5

Each tool targets a distinct operation and domain (account, posts, coupons, credentials, scheduling, oracle, etc.), with clear differentiation even for similar-sounding tools like check_balance vs check_authority_balance or list_coupons vs list_my_coupons. There is no ambiguity.

Naming Consistency5/5

All tools follow a consistent verb_noun snake_case pattern (e.g., create_post, delete_coupon, list_posts), with no mixing of styles. The excalibur_ prefix is uniform.

Tool Count1/5

With 72 tools, the server far exceeds the typical well-scoped range (3–15). While the functionality is broad, the sheer number feels excessive for a single MCP server, leading to an extreme mismatch.

Completeness5/5

The tool surface covers the full lifecycle for core domains: CRUD for posts, snippets, coupons, credentials; complete flows for OAuth, npub proof, scheduling, notarization, and payments. No obvious gaps are present.