Skip to main content
Glama
README.md
# litellm-mcp

MCP server for the [LiteLLM](https://docs.litellm.ai/) proxy API. No clone, no build — just `npx`.

## Cursor config

```json
{
  "mcpServers": {
    "litellm": {
      "command": "npx",
      "args": ["-y", "@weeebdev/litellm-mcp"],
      "env": {
        "LITELLM_BASE_URL": "https://litellm-api.up.railway.app",
        "LITELLM_API_KEY": "sk-your-key-here"
      }
    }
  }
}
```

**From GitHub** (no npm):

```json
{
  "mcpServers": {
    "litellm": {
      "command": "npx",
      "args": ["-y", "github:weeebdev/litellm-mcp"],
      "env": {
        "LITELLM_BASE_URL": "https://litellm-api.up.railway.app",
        "LITELLM_API_KEY": "sk-your-key-here"
      }
    }
  }
}
```

**Local dev** (from a cloned repo):

```json
{
  "mcpServers": {
    "litellm": {
      "command": "npx",
      "args": ["-y", "."],
      "cwd": "/Users/adil/projects/litellm-mcp",
      "env": {
        "LITELLM_API_KEY": "sk-your-key-here"
      }
    }
  }
}
```

## Configuration

| Variable | Description | Default |
|----------|-------------|---------|
| `LITELLM_BASE_URL` | LiteLLM proxy URL | `https://litellm-api.up.railway.app` |
| `LITELLM_API_KEY` | Bearer token / virtual key | *(required)* |

## Tools

**LLM:** `litellm_chat_completion`, `litellm_completion`, `litellm_embeddings`, `litellm_image_generation`, `litellm_responses_create`

**Models & health:** `litellm_list_models`, `litellm_get_model_info`, `litellm_health_check`, `litellm_test_model_connection`

**Admin:** `litellm_list_keys`, `litellm_get_key_info`, `litellm_generate_key`, `litellm_list_teams`, `litellm_get_spend_logs`, `litellm_list_mcp_servers`, `litellm_list_mcp_tools`

**Escape hatch:** `litellm_api_request` — call any endpoint from the [Swagger docs](https://litellm-api.up.railway.app/)

## Publish to npm

```bash
npm publish --access public
```

Then anyone can run:

```bash
npx -y @weeebdev/litellm-mcp
```