Skip to main content
Glama
README.md
# @cargoffer/zbe-mcp

MCP (Model Context Protocol) server for checking vehicle routes against Low Emission Zones (ZBE/LEZ) in Spain and Portugal.

## Quick Start

```bash
npx @cargoffer/zbe-mcp
```

## Tools

| Tool | Description |
|------|-------------|
| `zbe.checkRoute` | Check if a vehicle route intersects ZBE polygons |
| `zbe.listPolygons` | List ZBE polygons with optional filters |
| `zbe.getStats` | Get coverage statistics |
| `zbe.getBadgeInfo` | Get info about DGT environmental badges |
| `zbe.getVehicleRestrictions` | Get vehicle access rules for a specific city |

## Configuration

| Environment Variable | Default | Description |
|---------------------|---------|-------------|
| `ZBE_API_URL` | `https://zbe.transcend.cargoffer.com/api` | ZBE API base URL |
| `ZBE_API_KEY` | (none) | API key for authentication |

## Claude Desktop Config

```json
{
  "mcpServers": {
    "zbe": {
      "command": "npx",
      "args": ["@cargoffer/zbe-mcp"],
      "env": {
        "ZBE_API_KEY": "your-api-key"
      }
    }
  }
}
```

## SDKs

**TypeScript:** [@cargoffer/zbe-sdk](https://github.com/cargoffer/zbe-mcp-server)
```typescript
import { ZbeClient } from '@cargoffer/zbe-sdk';
const client = new ZbeClient({ apiKey: 'YOUR_KEY' });
const result = await client.checkRoute({...});
```

**Python:** [cargoffer-zbe](https://github.com/cargoffer/zbe-mcp-server)
```python
from zbe_client import ZbeClient
client = ZbeClient(api_key="YOUR_KEY")
result = await client.check_route(route=[...], vehicle={...})
```

## Links
- **GitHub:** https://github.com/cargoffer/zbe-mcp-server
- **API Docs:** https://zbe.transcend.cargoffer.com/api/docs.json
- **Website:** https://zbe.cargoffer.com
- **Report issues:** https://github.com/cargoffer/zbe-mcp-server/issues

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: route checking, badge info, stats, city restrictions, and polygon listing. No overlap or ambiguity.

Naming Consistency5/5

All tools follow a consistent camelCase verb_noun pattern (e.g., checkRoute, listPolygons), making them predictable and easy to understand.

Tool Count5/5

Five tools is ideal for this domain, covering key operations without being too sparse or excessive. Each tool earns its place.

Completeness5/5

The tool set provides complete read-only coverage for querying ZBE data: route checking, city restrictions, polygon browsing, badge explanations, and database stats. No obvious gaps.

Maintenance

ActivityStale
ResponsivenessNo issues