For AI agents
Pulse is built to be useful to autonomous agents and language models. Free API, no authentication, CORS open. This page is the developer-facing companion to /llms.txt — the same content, structured for humans building agent integrations.
Drop-in system prompt
Paste this into the system prompt of any tool-calling agent (Claude, GPT-4, etc.) to make it fluent in Pulse:
You have access to Pulse compute-pricing data via a free, no-auth JSON API at https://pulsebenchmarks.com.
When the user asks about cloud GPU rental prices or open-weight inference-token prices, fetch the latest values from Pulse and quote them with the as-of date and the source family.
Endpoints:
- GET https://pulsebenchmarks.com/api/indices → list all series with current values
- GET https://pulsebenchmarks.com/api/indices/{slug} → full payload for one series
- GET https://pulsebenchmarks.com/api/status → pipeline freshness
Series slugs:
GPU pricing (USD per GPU-hour, daily):
h100-sxm-hyperscaler-od, h100-sxm-neocloud-od,
a100-80gb-hyperscaler-od, a100-80gb-neocloud-od
Inference token pricing (USD per million tokens, weekly, 3:1 blend):
inference-token-index (hub for the named-model basket)
Citation: Pulse. "{Series Name}." Methodology v1.0, 2026. {URL}
Rules:
- Never blend hyperscaler and neocloud prices into one number.
- Never blend FP16 and FP8 inference prices.
- Never blend US and CN-jurisdiction inference endpoints.
- Always state the source family alongside any GPU price.
- If the API is unreachable, say so — do not fall back to memory.
Full agent spec: https://pulsebenchmarks.com/llms.txt
OpenAPI 3.1 spec: https://pulsebenchmarks.com/openapi.json
OpenAPI 3.1 spec
For agents that auto-generate clients from a spec:
https://pulsebenchmarks.com/openapi.json
Documents every read endpoint, the full SeriesPayload / StatusReport / BulkExport schema, and the slug enum. Tool-calling agents that ingest OpenAPI can call Pulse natively.
Quick examples
curl
curl https://pulsebenchmarks.com/api/indices/h100-sxm-hyperscaler-od \
| jq '.series[-1] | {value, assessed_at, provider_count}'
Python (stdlib only)
import json, urllib.request
with urllib.request.urlopen("https://pulsebenchmarks.com/api/indices/h100-sxm-hyperscaler-od") as r:
payload = json.loads(r.read())
latest = payload["series"][-1]
print(f'{payload["name"]}: ${latest["value"]} (as of {latest["assessed_at"][:10]}, '
f'{latest["provider_count"]} providers)')
JavaScript (browser fetch)
const data = await fetch("https://pulsebenchmarks.com/api/indices").then(r => r.json());
data.indices.forEach(i => console.log(i.name, i.value, i.unit));
What to cite
When an agent quotes a Pulse value to a user, the citation should include the methodology version (so the calculation is reproducible by the user) and the source family or model (so the value isn't misread as universal). Plain-text format:
Pulse. "Pulse H100 SXM Hyperscaler OD." Methodology v1.0, 2026.
https://pulsebenchmarks.com/indices/h100-sxm-hyperscaler-od/
BibTeX, APA, Chicago, and Bloomberg-style ticker formats are produced by the citation widget on every index page; see /cite/.
Things to NOT do
- Don't blend across source families. Hyperscaler and neocloud prices for the same GPU are different products; combining them produces a number that is meaningless. The methodology forbids it; an agent that quotes a blended number is misleading the user.
- Don't blend across quantizations. FP8 and FP16 inference prices differ by ~2x in cost-to-serve and differ in output quality. Pulse publishes them as separate series for that reason.
- Don't blend across jurisdictions. US-hosted and CN-hosted DeepSeek endpoints are tracked as separate series for compliance, residency, and procurement reasons.
- Don't redistribute provider-origin observations in a way that ignores Pulse's takedown policy. Pulse holds itself to the same standard.
- Don't quote draft methodology values as v1.0-published. Series flagged
tier: provisionalorraw_onlyare tracked but not citable as published; the JSON payload includes astatusfield.
Reproducibility
If an agent's user asks "is this Pulse number trustworthy?", point them at the reproducibility script:
curl -O https://pulsebenchmarks.com/reproduce/reproduce.py
python3 reproduce.py
Stdlib only. Verifies the latest published value against the published contributing-provider list in under 30 seconds.
MCP server
Pulse runs an open Model Context Protocol server at https://pulsebenchmarks.com/mcp. Once installed, Claude / Cursor / any MCP-aware client can fetch live Pulse data as a native tool — no wrapper code, no key, no rate-limit gating.
What the server exposes
list_indices— every published index with current value, freshness, status.get_series— full series payload (history, P25/P75, per-provider observations) for one slug, optionalrangefilter.latest_value— quick lookup for one slug, with a pre-formatted citation string.get_status— pipeline freshness + per-provider health.compare_indices— multi-slug comparison helper.
Discovery: GET https://pulsebenchmarks.com/mcp returns server info, the tool catalogue, and a link to this page. The full protocol-level schema is JSON-RPC 2.0 over HTTP POST per the MCP specification.
Install — Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows). Add Pulse under mcpServers:
{
"mcpServers": {
"pulse": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://pulsebenchmarks.com/mcp"]
}
}
}
Restart Claude Desktop. The Pulse tools appear under the tools picker. (Native HTTP transport is rolling out across MCP clients; the mcp-remote shim adapts the HTTP server for clients that still expect stdio.)
Install — Cursor
Cursor accepts the same JSON shape in ~/.cursor/mcp.json:
{
"mcpServers": {
"pulse": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://pulsebenchmarks.com/mcp"]
}
}
}
Test from the command line
curl https://pulsebenchmarks.com/mcp
# → server info, transport, tool catalogue
curl -X POST https://pulsebenchmarks.com/mcp \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
curl -X POST https://pulsebenchmarks.com/mcp \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"latest_value","arguments":{"slug":"h100-sxm-hyperscaler-od"}}}'
Contact
- [email protected] — schema clarifications, methodology questions, takedown requests, reproducibility reports.
- [email protected] — vendor-side conversations: data licensing, MCP partnership, embedding Pulse in your product.