{"name":"compute.md API","version":"2.1","description":"Price, customize and provision compute for AI agents. Set your stack (machines, RAM, GPUs, storage, databases, network, CDN, OS, models, monitoring) and your rules (spend, stop, access, security, data); check a plan against them; size models and look up accelerator specs. No key, CORS open, no prices. compute.md never books, bills, stores requests or holds credentials.","disclaimer":"Use at your own risk. compute.md is provided as is, without warranty. Information here may be inaccurate, incomplete or not current, and is not verified; sizing figures are estimates. Not financial, legal or procurement advice. Confirm everything with your providers before you rent or buy.","terms":"https://compute.md/terms","skill":"https://compute.md/compute.md","levers":"https://compute.md/api/v1/levers","openapi":"https://compute.md/openapi.json","mcp":{"url":"https://compute.md/mcp","transport":"Streamable HTTP (stateless, JSON responses, no auth)","tools":["fit_model","gpu_specs","model_spec","build_limits","check_plan"],"prompts":["compute (optional preset and lever arguments)"],"resources":["https://compute.md/compute.md","https://compute.md/api/v1/levers"]},"endpoints":[{"path":"/compute.md","summary":"The COMPUTE.md skill. Add a preset or any setting to get a version with Your rules and Your stack written in. Every setting is a number or a fixed choice; the value unset clears an optional one.","format":"markdown","params":[{"name":"preset","type":"string","enum":["core","recommended","locked","web_app","inference","gpu_job","data_pipeline","dev_box","static_site"],"description":"A starting point, applied first; each lever you pass overrides it. Presets fill optional levers only, never budget, approvals or stop rules."}],"levers":true,"examples":["https://compute.md/compute.md","https://compute.md/compute.md?preset=recommended&budget_usd=100&approval_usd=25&stop_hours=6","https://compute.md/compute.md?budget_usd=100&max_gpus=8&egress_gb=500&exposure=private&encryption=customer"],"method":"GET"},{"path":"/api/v1/levers","summary":"The lever catalog: groups, every lever with its kind, unit, range, options and default, and the presets.","format":"json","params":[],"examples":["https://compute.md/api/v1/levers"],"method":"GET"},{"path":"/api/v1/limits","summary":"Build Your rules and Your stack from a preset and settings: the settings as JSON, the Markdown sections, a link to the skill with them written in, and notes on anything clamped or ignored. Nothing is stored.","format":"json","params":[{"name":"preset","type":"string","enum":["core","recommended","locked","web_app","inference","gpu_job","data_pipeline","dev_box","static_site"],"description":"A starting point, applied first; each lever you pass overrides it. Presets fill optional levers only, never budget, approvals or stop rules."},{"name":"format","type":"string","enum":["json","markdown"],"description":"json (default) or markdown for just the sections."}],"levers":true,"examples":["https://compute.md/api/v1/limits?preset=web_app&budget_usd=200","https://compute.md/api/v1/limits?preset=locked&format=markdown"],"method":"GET"},{"path":"/api/v1/check","method":"POST","summary":"Check a provider-neutral plan against your limits before launching: a verdict (blocked, needs_approval or within_limits), the findings, totals, and which limits the plan let it check. A clean result is not an approval. Nothing is stored. GET returns usage and an example body.","format":"json","params":[],"body":"JSON {\"limits\": {lever: value}, \"limits_url\": \"a compute.md link or query string\", \"plan\": {\"resources\": [...], ...}}. limits wins over limits_url; with neither, the core defaults apply. Only the link's query is read; nothing is fetched. Up to 64 KB. Plan schema: /openapi.json (checkPlan).","examples":["https://compute.md/api/v1/check"]},{"path":"/api/v1/fit","summary":"Size a model or job: memory, which GPUs fit and how many, and estimated speed. Estimates only; no prices.","format":"json","params":[{"name":"model","type":"string","description":"Hugging Face repo id (Qwen/Qwen3.6-27B) or a quick pick (gpt-oss-120b). Or pass params_b instead."},{"name":"task","type":"string","enum":["serve","lora","qlora","full"],"description":"Default serve."},{"name":"precision","type":"string","enum":["native","bf16","fp8","int8","int4"],"description":"Weight precision. Default native: the checkpoint as published."},{"name":"kv","type":"string","enum":["bf16","fp8"],"description":"KV cache precision. Default bf16."},{"name":"context","type":"string","description":"Tokens per sequence, such as 32768 or 32k. Default 32k serving, 4k training."},{"name":"concurrency","type":"integer","description":"Sequences in flight when serving, batch size when training. Default 8 or 4."},{"name":"train_tokens","type":"string","description":"Total training tokens (dataset x epochs), such as 50m, for an estimated duration."},{"name":"max_gpus","type":"integer","description":"Largest device count to consider. Default 8."},{"name":"gpu","type":"string","description":"Only these accelerators, comma-separated: h100-sxm,h200,mi300x."},{"name":"limit","type":"integer","description":"Options to return. Default 12."},{"name":"params_b","type":"number","description":"Parameters in billions, for a model that isn't on Hugging Face. Add active_b, layers, kv_heads and head_dim for speed and KV cache."}],"examples":["https://compute.md/api/v1/fit?model=Qwen/Qwen3.6-27B&context=32k&concurrency=8","https://compute.md/api/v1/fit?model=meta-llama/Llama-3.3-70B-Instruct&precision=fp8&kv=fp8&concurrency=32","https://compute.md/api/v1/fit?model=Qwen/Qwen3.5-9B&task=lora&train_tokens=50m"],"method":"GET"},{"path":"/api/v1/gpus","summary":"Accelerator specs from vendor datasheets: memory, bandwidth, dense BF16 and FP8 throughput, interconnect. No prices.","format":"json","params":[{"name":"gpu","type":"string","description":"Accelerator ids or names, comma-separated: h100, h200, b200, a100, l40s, mi300x, rtx-4090, tpu-v6e."},{"name":"min_memory_gb","type":"number","description":"Only accelerators with at least this much memory."},{"name":"vendor","type":"string","description":"Only one vendor: NVIDIA, AMD, Google, AWS, Intel, Apple."}],"examples":["https://compute.md/api/v1/gpus","https://compute.md/api/v1/gpus?min_memory_gb=140"],"method":"GET"},{"path":"/api/v1/models","summary":"Model specs: parameters, active parameters, checkpoint size, attention layout and KV cache per token. Quick picks, or any Hugging Face repo via id.","format":"json","params":[{"name":"id","type":"string","description":"Hugging Face repo id. Omit for the quick-pick list."}],"examples":["https://compute.md/api/v1/models","https://compute.md/api/v1/models?id=openai/gpt-oss-120b"],"method":"GET"}],"sources":[{"data":"Model sizes and architectures","name":"Public Hugging Face model repositories (model info, file sizes, config.json)","url":"https://huggingface.co","refresh":"read on request, cached for a day"},{"data":"Accelerator specs","name":"Vendor datasheets, collected by hand","url":"https://compute.md/api/v1/gpus","refresh":"by hand"},{"data":"Limits and plans","name":"Your own request: levers in the link or body, and the plan you describe","url":"https://compute.md/api/v1/levers","refresh":"used to answer that request only; never stored"}],"usage":"Calls are counted anonymously (no IPs or personal data stored) to see what is useful. Limits and plans are used only to answer the request."}