Skip to main content
Glama
ProofHoldings

@proof-holdings/mcp-server

Official

get_api_key_usage

Read-only

Retrieve per-key verification counts by type, channel, and status for a Proof API key ID, plus request, confirmation, and authorization totals and attribution context.

Instructions

Get per-API-key usage for a given key id: verification counts by type/channel/status, plus verification-request/confirmation/authorization totals, and attribution context (attribution_cutoff_at, attributed_fraction). The counts cover the key and every key it replaced (api_key.replaced_key_ids). Counts only — no recipient identifiers. Scoped to the authenticated account; an API-key caller may read only its own key.

ACCESS: needs a Proof account. Set PROOF_API_KEY and restart this server, or sign in with start_login — a session opens this tool — then call this tool again.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesThe API key id to fetch usage for
environmentNoScope metrics to test or production data (default: production)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.0

TDQS

A4.4/5.0
Behavior5/5

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

Beyond readOnlyHint, it discloses non-obvious traits: counts are aggregates only with no recipient identifiers, counts include the key plus every key it replaced (replaced_key_ids), and there is an account/self-scoping authorization rule. The ACCESS paragraph also documents auth requirements and the start_login fallback.

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

Conciseness4/5

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

Front-loads what the tool returns, then covers scope and access in a separate paragraph, with zero filler sentences. It is somewhat dense but every clause carries information, so it stays appropriately sized.

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?

With no output schema, the description compensates by enumerating the returned metrics and attribution fields, and it states the auth/scope constraints an agent needs. Nothing required to select or invoke the tool correctly is missing.

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 100%, so both parameters (id, environment) are already documented in the schema. The description reinforces the id's meaning ('for a given key id') but adds no syntax or default detail beyond the schema, so the baseline 3 applies.

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?

States a specific verb+resource (per-API-key usage for a given key id) and enumerates the returned breakdowns: verification counts by type/channel/status, request/confirmation/authorization totals, and attribution context. This clearly distinguishes it from siblings like get_usage, get_platform_summary, and get_self_api_key.

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?

Gives clear context: scoped to the authenticated account, and an API-key caller may read only its own key, plus the PROOF_API_KEY / start_login prerequisites. However, it never explicitly names when to prefer this over get_usage or get_self_api_key, so no exclusion/alternative guidance is present.

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

Deploy Server

Other Tools