{"name":"io.github.jdhart81/agent-metering","slug":"jdhart81-agent-metering","title":null,"description":"Usage metering + SLA accounting for agent services (the meter behind x402 micropayments).","url":"https://mcp.market/server/jdhart81-agent-metering","rating":null,"grade":"B","score":81,"certified":false,"status":"active","category":"finance","tags":["finance","ai"],"presence":{"score":20,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-25T01:04:53.000Z","license":"Apache-2.0"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T06:00:27.500Z","last_ok_at":"2026-11-04T06:00:27.500Z","latency_ms":14},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/jdhart81/viridis-agent-fleet","website":null,"version":"0.2.0","remotes":[{"type":"streamable-http","url":"https://mcp.viridisconservation.com/metering/mcp"}],"packages":[],"tools":[{"name":"close_period","description":"Freeze all open events into an immutable invoice (exactly-once).\n    The invoice amount is what agent-escrow-agent should settle.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"}},"required":["meter_id"],"title":"close_periodArguments"}},{"name":"create_meter","description":"Create a usage meter between a provider and a consumer agent.\n\n    unit: what is being counted (call, token, kwh, ...). Price is in minor\n    currency units (cents) per unit. Returns the meter_id.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"provider":{"title":"Provider","type":"string"},"consumer":{"title":"Consumer","type":"string"},"unit":{"title":"Unit","type":"string"},"price_minor_per_unit":{"title":"Price Minor Per Unit","type":"number"},"currency":{"default":"USD","title":"Currency","type":"string"},"sla_target":{"default":0.99,"title":"Sla Target","type":"number"}},"required":["provider","consumer","unit","price_minor_per_unit"],"title":"create_meterArguments"}},{"name":"describe_agent","description":"Fleet-standard self-description.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"describe_agentArguments"}},{"name":"flag_meter","description":"Admin: flag/unflag a meter as test/synthetic so its events are\n    excluded from usage statistics by default. Touches meter metadata only —\n    never events, never the hash chain, never billing accruals. Requires the\n    server's VIRIDIS_ADMIN_TOKEN.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"},"is_test":{"title":"Is Test","type":"boolean"},"admin_token":{"title":"Admin Token","type":"string"},"note":{"default":"","title":"Note","type":"string"}},"required":["meter_id","is_test","admin_token"],"title":"flag_meterArguments"}},{"name":"list_events","description":"Read usage events (paginated, read-only). Filter by meter, provider,\n    consumer_class (internal|external|unknown), channel, outcome (ok|error),\n    and ISO date range [since, until). Test-flagged events are excluded\n    unless include_test=true. Returns events + next_cursor.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Meter Id"},"provider":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Provider"},"consumer_class":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Consumer Class"},"channel":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Channel"},"outcome":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Outcome"},"since":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Since"},"until":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Until"},"include_test":{"default":false,"title":"Include Test","type":"boolean"},"limit":{"default":100,"title":"Limit","type":"integer"},"cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Cursor"}},"title":"list_eventsArguments"}},{"name":"list_meters","description":"List all meters with event/invoice counts.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"title":"list_metersArguments"}},{"name":"record_usage","description":"Record a usage event. Idempotent on event_id (safe to retry — never\n    double-billed). outcome is 'ok' or 'error' and feeds the SLA report.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"},"event_id":{"title":"Event Id","type":"string"},"quantity":{"title":"Quantity","type":"number"},"outcome":{"default":"ok","title":"Outcome","type":"string"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"title":"Metadata"}},"required":["meter_id","event_id","quantity"],"title":"record_usageArguments"}},{"name":"sla_report","description":"Pure SLA report: success_rate vs sla_target, breach flag. No mutation.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"}},"required":["meter_id"],"title":"sla_reportArguments"}},{"name":"usage_summary","description":"Totals for a meter: event count, total quantity, accrued minor units.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"}},"required":["meter_id"],"title":"usage_summaryArguments"}},{"name":"usage_timeseries","description":"Usage time series bucketed on each event's recorded_at (UTC;\n    bucket=day|hour), grouped across meters by provider — a real time-series\n    primitive, independent of meter creation times. Includes per-bucket\n    breakdowns by consumer_class / channel / provider. est_accrued_minor is\n    an estimate; authoritative billing stays with usage_summary.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"bucket":{"default":"day","title":"Bucket","type":"string"},"provider":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Provider"},"meter_id":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Meter Id"},"consumer_class":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Consumer Class"},"channel":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Channel"},"since":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Since"},"until":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Until"},"include_test":{"default":false,"title":"Include Test","type":"boolean"}},"title":"usage_timeseriesArguments"}},{"name":"verify_chain","description":"Verify the tamper-evident event hash chain for a meter.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"meter_id":{"title":"Meter Id","type":"string"}},"required":["meter_id"],"title":"verify_chainArguments"}}],"scan":{"score":81,"grade":"B","scanned_at":"2026-09-25T21:44:43.214Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-25T21:44:43.142Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 422ms"]},"poisoning":{"score":15,"max":15,"notes":["11 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 1 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 1 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"}],"inputs":{"probes":[{"url":"https://mcp.viridisconservation.com/metering/mcp","reachable":true,"authRequired":false,"latencyMs":422,"serverInfo":{"name":"agent-metering-agent","version":"1.28.1"}}],"packages":[],"repo":{"found":true,"owner":"jdhart81","repo":"viridis-agent-fleet","archived":false,"pushedAt":"2026-09-25T01:04:53Z","stars":0,"forks":0,"openIssues":14,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/179389866?v=4","ownerCreatedAt":"2024-08-25T13:59:56Z","license":"Apache-2.0"},"icon":{"url":null,"source":"none"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"Apache-2.0","lastPushAt":"2026-09-25T01:04:53.000Z","score":20}}}},"grade_history":[],"reviews":[]}