# Llm Requirements Calculator — MCP tool `findutils:llm_requirements_calculator`

Estimate the VRAM, system RAM, and disk space needed to run an open-weight LLM locally, and which common GPUs and Macs it fits on. Covers Llama, Mistral, Qwen, DeepSeek, Gemma, Phi, Code Llama, Command R, Yi, SmolLM, StableLM, Grok, Falcon, and MiniCPM across FP32 through Q2_K quantization.

- Category: calculators
- MCP server: https://mcp.findutils.com/ (Streamable HTTP, API key for tools/call, 120 req/min per IP)
- REST endpoint: POST https://api.findutils.com/api/tools/llm-requirements-calculator/execute (API key, 60 req/min per IP)
- API key: Running a tool needs an API key. Keys are not for sale yet: ask for early access. Without a key, a tool call answers HTTP 402 Payment Required with the error code PAYMENT_REQUIRED. The catalog and the schemas stay open without a key. https://findutils.com/api/#api-keys
- Reference page: https://findutils.com/mcp/llm-requirements-calculator/
- Same tool on the other surface: https://findutils.com/api/llm-requirements-calculator/

## Connect

```bash
claude mcp add findutils --transport http https://mcp.findutils.com/ --header "Authorization: Bearer YOUR_API_KEY"
```

Claude Desktop (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "findutils": {
      "url": "https://mcp.findutils.com/",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}
```

## Call the tool (verified example)

```bash
curl -X POST https://mcp.findutils.com/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "llm_requirements_calculator",
      "arguments": {
        "model": "llama-3.1-8b",
        "quantization": "q4_k_m",
        "context_length": 8192
      }
    }
  }'
```

## Input schema

| Argument | Type | Required | Description |
|---|---|---|---|
| `model` | string (llama-3.2-1b \| llama-3.2-3b \| llama-3.1-8b \| llama-3.1-70b \| llama-3.1-405b \| mistral-7b \| mistral-nemo \| mixtral-8x7b \| mixtral-8x22b \| mistral-small-3 \| qwen-2.5-0.5b \| qwen-2.5-1.5b \| qwen-2.5-3b \| qwen-2.5-7b \| qwen-2.5-14b \| qwen-2.5-32b \| qwen-2.5-72b \| qwen-2.5-coder-7b \| qwen-2.5-coder-32b \| qwen-qwq-32b \| deepseek-r1-distill-7b \| deepseek-r1-distill-14b \| deepseek-r1-distill-32b \| deepseek-r1-distill-70b \| deepseek-v3 \| deepseek-r1 \| gemma-2-2b \| gemma-2-9b \| gemma-2-27b \| phi-3-mini \| phi-3-medium \| phi-4 \| codellama-7b \| codellama-13b \| codellama-34b \| codellama-70b \| qwen-3-0.6b \| qwen-3-1.7b \| qwen-3-4b \| qwen-3-8b \| qwen-3-14b \| qwen-3-32b \| qwen-3-235b \| command-r-35b \| command-r-plus \| yi-1.5-6b \| yi-1.5-9b \| yi-1.5-34b \| smollm-2-135m \| smollm-2-360m \| smollm-2-1.7b \| stablelm-2-1.6b \| stablelm-2-12b \| grok-1 \| falcon-3-1b \| falcon-3-3b \| falcon-3-7b \| falcon-3-10b \| minicpm-3-4b) | yes | Model id (or exact display name). One of: llama-3.2-1b, llama-3.2-3b, llama-3.1-8b, llama-3.1-70b, llama-3.1-405b, mistral-7b, mistral-nemo, mixtral-8x7b, mixtral-8x22b, mistral-small-3, qwen-2.5-0.5b, qwen-2.5-1.5b, qwen-2.5-3b, qwen-2.5-7b, qwen-2.5-14b, qwen-2.5-32b, qwen-2.5-72b, qwen-2.5-coder-7b, qwen-2.5-coder-32b, qwen-qwq-32b, deepseek-r1-distill-7b, deepseek-r1-distill-14b, deepseek-r1-distill-32b, deepseek-r1-distill-70b, deepseek-v3, deepseek-r1, gemma-2-2b, gemma-2-9b, gemma-2-27b, phi-3-mini, phi-3-medium, phi-4, codellama-7b, codellama-13b, codellama-34b, codellama-70b, qwen-3-0.6b, qwen-3-1.7b, qwen-3-4b, qwen-3-8b, qwen-3-14b, qwen-3-32b, qwen-3-235b, command-r-35b, command-r-plus, yi-1.5-6b, yi-1.5-9b, yi-1.5-34b, smollm-2-135m, smollm-2-360m, smollm-2-1.7b, stablelm-2-1.6b, stablelm-2-12b, grok-1, falcon-3-1b, falcon-3-3b, falcon-3-7b, falcon-3-10b, minicpm-3-4b. |
| `quantization` | string (fp32 \| fp16 \| q8_0 \| q6_k \| q5_k_m \| q4_k_m \| q3_k_m \| q2_k) | no | Quantization id. Default: "q4_k_m". Default: `"q4_k_m"`. |
| `context_length` | integer | no | Context window in tokens (512-131072). Default: 8192. Default: `8192`. |
| `batch_size` | integer | no | Concurrent sequences (1-64). Default: 1. Default: `1`. |

Example arguments (verified):

```json
{
  "model": "llama-3.1-8b",
  "quantization": "q4_k_m",
  "context_length": 8192
}
```

## Also a REST endpoint

```bash
curl -X POST https://api.findutils.com/api/tools/llm-requirements-calculator/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama-3.1-8b",
    "quantization": "q4_k_m",
    "context_length": 8192
  }'

# Parameter schema (no key needed)
curl https://api.findutils.com/api/tools/llm-requirements-calculator
```

Full REST reference: https://findutils.com/api/llm-requirements-calculator/ · OpenAPI 3.1 spec: https://findutils.com/api/openapi.json

---
Full catalog: POST https://mcp.findutils.com/ with method `tools/list` · https://findutils.com/mcp/ · https://findutils.com/llms.txt
