NeuVerbinde jeden Agenten mit UberLLM: ein Schlüssel, alle Modelle, zum Listenpreis oder günstiger.
UberLLM

MCP-Server

UberLLM ist ein MCP-Server unter https://api.uberllm.dev/mcp. Ein damit verbundener Agent kann Modelle auflisten, eine Anfrage bepreisen, Bilder erstellen und bearbeiten, Videos erstellen und Ihr Guthaben überprüfen, ohne HTTP-Aufrufe schreiben zu müssen.

Es ist im offiziellen MCP-Register als dev.uberllm/mcp aufgeführt, sodass Clients, die das Register lesen, es namentlich hinzufügen können.

Es verwendet den Streamable HTTP-Transport. Melden Sie sich mit demselben API-Schlüssel an, den Sie für /v1 verwenden, gesendet als Authorization: Bearer ull_.... Ein Tool-Aufruf wird abgerechnet, begrenzt und abgelehnt genau wie dieselbe Anfrage an die API: dieselben Preise, dieselben Ausgabenlimits pro Schlüssel, und fehlgeschlagene Anfragen kosten nichts.

Claude Code

Ersetzen Sie $KEY durch Ihren API key, oder setzen Sie zuerst KEY in Ihrer Shell:

claude mcp add --transport http uberllm https://api.uberllm.dev/mcp --header "Authorization: Bearer $KEY"

Fügen Sie --scope user hinzu, um es in jedem Projekt zu verwenden. Führen Sie claude mcp list aus, um zu überprüfen, ob es verbunden ist.

Claude Desktop

Claude Desktop verbindet sich über einen Schlüssel mit einem Remote-Server durch mcp-remote (benötigt Node.js). Öffnen Sie Settings → Developer → Edit Config und fügen Sie hinzu:

```json
{
  "mcpServers": {
    "uberllm": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://api.uberllm.dev/mcp", "--header", "Authorization:${UBERLLM_AUTH}"],
      "env": { "UBERLLM_AUTH": "Bearer ull_your_key_here" }
    }
  }
}

Der Header hat absichtlich kein Leerzeichen nach `:`: unter Windows setzt Claude Desktop Leerzeichen innerhalb von `args` nicht in Anführungszeichen. Starten Sie Claude Desktop nach dem Speichern neu.

---
## Cursor und andere Clients

Clients, die eine `mcpServers`-Datei lesen (z.B. `~/.cursor/mcp.json` von Cursor), akzeptieren:

```json
{
  "mcpServers": {
    "uberllm": {
      "url": "https://api.uberllm.dev/mcp",
      "headers": { "Authorization": "Bearer ull_your_key_here" }
    }
  }
}

Tools

Tool Was es tut Kosten
list_models Modelle, die Sie jetzt aufrufen können, mit ihrem Preis. type ist chat, image, video oder music; search listet Modelle, deren ID oder Name die Wörter enthält. Nein
get_model Ein Modell: sein Preis und, für ein Medienmodell, parameters, ein JSON Schema der Optionen, die seine Anfragen akzeptieren. Nein
quote Prüft eine Bild-, Video-, Musik- oder Text-zu-Sprache-Anfrage gegen das Modell und bepreist sie, ohne etwas zu erstellen. Gibt cost_usd, den gelisteten Preis, und max_cost_usd zurück, was während der Ausführung gehalten wird und das Maximum, das abgerechnet wird. Nein
generate_image Erstellt Bilder aus einem Prompt. Gibt Links und usage.cost_usd zurück. Mit return_image: true kommen die Bilder auch in der Antwort zurück. Ja
edit_image Ändert das Bild in image_url (oder die Bilder in input_images) gemäß dem Prompt. Verwenden Sie ein Bearbeitungsmodell, wie eines, dessen ID auf -edit endet. Ja
start_video Startet ein Video und gibt einen Job zurück. Senden Sie idempotency_key, damit ein erneuter Versuch niemals ein zweites Video startet oder bezahlt. Ja, wenn das Video erstellt wird
get_job Ein Video- oder Musik-Job: Status, Fortschritt und, sobald er erfolgreich war, seine Dateilinks und Kosten. Nein
wait_job Wartet, bis ein Job beendet ist, für bis zu timeout_seconds (maximal 50). Wenn done false ist, rufen Sie es erneut auf. Nein
balance Was Sie jetzt ausgeben können und was für noch laufende Anfragen und Jobs gehalten wird, in US-Dollar. Nein

Optionen, die ein Modell in seinem parameters Schema auflistet (zum Beispiel duration_seconds, resolution oder aspect_ratio), gehören in options auf quote, generate_image, edit_image und start_video. Senden Sie max_cost (US-Dollar) an ein kostenpflichtiges Tool, um alles abzulehnen, was mehr kosten könnte.

Ein Video dauert von etwa 30 Sekunden bis zu mehreren Minuten. Der übliche Ablauf ist get_model, quote, start_video, dann wait_job, bis der Status succeeded, failed, canceled oder expired ist.

Dateien

Ergebnislinks (/v1/media/artifacts/...) benötigen denselben API-Schlüssel im Authorization Header zum Herunterladen. Dateien bleiben für etwa 3 Stunden erhalten, nachdem ein Auftrag abgeschlossen ist; Bildlinks für etwa 15 Minuten. Siehe Video oder Bild erstellen für die Details jeder Anfrage.

Fehler

Wenn die API einen Aufruf ablehnt, antwortet das Tool mit einem Fehlerergebnis, das die eigene Nachricht und den Code der API enthält, zum Beispiel insufficient_credits oder max_cost_too_low. Die Codes sind die in Fehler. Eine Anfrage ohne gültigen Schlüssel wird mit 401 beantwortet, bevor ein Tool ausgeführt wird.

Verbindung prüfen

curl https://api.uberllm.dev/mcp \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'