MCP for agents

Agents burn meters faster than people do. The Argus MCP server gives them a read-only view of every meter you track, so an agent can check its own runway, notice a provider running dry, and route around trouble — before your alert email does.

Connect

Point any MCP client at the server with an API key as the bearer token (create one in Settings → API keys):

{
  "mcpServers": {
    "argus": {
      "url": "https://api.argus.town/mcp",
      "headers": { "Authorization": "Bearer argus_mcp_..." }
    }
  }
}

Tools

Read tools, all scoped to the key's workspace:

get_overview

Every provider's metrics and totals at once.

list_connections

Connected providers and their status.

get_provider

Full metrics and rate-limit snapshots for one connection.

get_rate_limit_status

The tightest rate-limit headroom and error rates across providers — the 'am I about to hit a wall' check.

get_advisories

Active warnings: low balances, short runway, spend spikes.

get_cost_accuracy

How exact each provider's numbers are right now (reconciliation drift and coverage).

get_request_costs

Recent itemized request costs for a provider — what did the last N calls actually cost.

Management tools

Agents can also manage connections, scoped to the key's project: an agent holding a project's key can only ever act on that project.

list_available_providers

Providers connectable with an API key, and which credential types each accepts.

connect_provider{ provider, secret, credential_type?, label? }

Connect a provider with a credential. Validated against the provider before storage, stored encrypted, initial sync queued. credential_type defaults to the provider's primary type — call list_available_providers for the accepted types per provider. Agents should only pass secrets their operator provided.

sync_connection{ connection_id }

Queue an immediate refresh for one connection.

There is deliberately no remove tool — deleting a connection erases its ledger, so removal stays a human action (dashboard, or an explicit REST DELETE).

Which providers can be connected

Two lists that differ on purpose: GET /providers/catalog knows the pricing shape of every provider Argus tracks, but only some are pollable with a key. Each catalog entry carries connectable and credential_types, and list_available_providers returns exactly the connectable set — check one of those before calling connect_provider.

A wrinkle worth knowing: openai and anthropic need an org admin / usage-scoped key (not a normal sk-… API key) — Argus validates against the provider and will reject a standard key. Providers that aren't pollable are still tracked via SDK/ingest telemetry.