Configurer le serveur MCP carbon-llm dans Claude Code & Cursor

Les URL publiques utilisent /mcp et /v1/session (réécrites vers /api/mcp et /api/v1/session sur ce site). Utilisez votre clé existante isv_live_sk_ / isv_test_sk_. Les estimations s'appuient sur le même modèle token × coefficient que la production /v1/track (indicatif ; pas un wattmètre).

Vue d'ensemble
Nouveau dans ce flux ? Lisez d'abord la page produit courte — puis revenez ici pour les URL exactes et les extraits IDE.
1. Ce que vous obtenez
Après chaque appel d'outil, nous enregistrons les tokens de prompt/complétion, attribuons le CO₂e, et agrégeons par session et par développeur et par jour. L'« équivalent » streaming est une comparaison à l'ordre de grandeur (voir méthodologie).
2. Endpoints
URL publiques (les réécritures retirent /api lorsque configuré).

GET https://carbon-llm.com/mcp/manifest— manifeste d'outils (sans auth)

POST https://carbon-llm.com/api/mcp Authorization: Bearer isv_…

GET https://carbon-llm.com/api/v1/session/<developer_id>/today — agrégats du jour (encoder les emails en URL)

3. Corps de requête (POST /mcp)
{
  "tool": "track_carbon",
  "input": {
    "prompt_tokens": 1200,
    "completion_tokens": 400,
    "model": "claude-3-5-sonnet-20241022",
    "session_id": "2026-03-30-my-repo",
    "developer_id": "you@company.com"
  }
}

session_id et developer_idprennent une valeur par défaut s'ils sont omis (voir le comportement de l'API).

4. Configuration Claude Code (exemple)
Pointez MCP vers votre hôte déployé ; utilisez la même clé Bearer que pour l'API REST.
// ~/.claude/config.json (exemple — les noms de champ dépendent de la version de Claude Code)
{
  "mcpServers": {
    "carbon-llm": {
      "url": "https://carbon-llm.com/mcp",
      "headers": {
        "Authorization": "Bearer isv_live_sk_…"
      }
    }
  }
}
5. Cursor & autres clients (exemple)
L'emplacement du fichier et la forme JSON dépendent de la version de votre éditeur — vérifiez auprès de la documentation MCP actuelle de Cursor. Le libellé du connecteur (ex. carbon-llm) est local uniquement ; le service est carbon-llm.
// .cursor/mcp.json (indicatif — vérifiez le chemin avec la doc Cursor)
{
  "mcpServers": {
    "carbon-llm": {
      "url": "https://carbon-llm.com/mcp",
      "headers": {
        "Authorization": "Bearer isv_test_sk_…"
      }
    }
  }
}
6. Vérifier votre déploiement
Utilisez la même origine que celle définie dans NEXT_PUBLIC_APP_URL (hôte de production).

Manifeste (sans auth) : ouvrez https://carbon-llm.com/mcp/manifest dans un navigateur ou curl -sS https://carbon-llm.com/mcp/manifest.

POST avec Bearer : voir le README pour un curl minimal vers https://carbon-llm.com/api/mcp.

Le chemin public /mcp est réécrit vers /api/mcp — les deux pointent vers le même gestionnaire.

7. Dépannage

401 / clé invalide : utilisez une clé depuis Tableau de bord → Clés API ; les clés de test et live fonctionnent toutes deux pour MCP — préfixe isv_test_sk_ ou isv_live_sk_.

Mauvais hôte : l'URL MCP doit correspondre à l'origine carbon-llm déployée (sans faute, https en production).

Aucun événement :vérifiez que l'IDE appelle bien l'outil après les réponses ; consultez l'usage du tableau de bord en cas de doute.