Skip to main content
Glama
README.md
# PegaRex MCP Server

[![PegaRex MCP connector](https://glama.ai/mcp/connectors/br.com.pegarex/pega-rex/badges/score.svg)](https://glama.ai/mcp/connectors/br.com.pegarex/pega-rex)

Remote [Model Context Protocol](https://modelcontextprotocol.io) server for
**[PegaRex](https://pegarex.com.br)** — a Brazilian vehicle meta-search engine
aggregating **1.8+ million live used-car and motorcycle listings** from **96
marketplaces** (OLX, Webmotors, Napista and many others), enriched with FIPE
reference prices and market analytics.

**Endpoint (Streamable HTTP, no auth, no key):**

```
https://pegarex.com.br/api/mcp
```

## Connect

**Claude (claude.ai / Desktop):** Settings → Connectors → *Add custom connector* → paste the URL above.

**ChatGPT (connector mode) and any MCP-capable client:** add the same URL as a remote MCP server.

Step-by-step guide (pt-BR): <https://pegarex.com.br/mcp>

Also listed in the [official MCP Registry](https://registry.modelcontextprotocol.io) as `br.com.pegarex/mcp`.

## Local (stdio) clients

For clients that can only launch local servers, this repository contains a
small bridge (`src/pegarex_mcp`). It opens one session to the hosted server and
relays `tools/list` and `tools/call` unchanged; nothing is computed or stored
locally. Python 3.10+.

With [uv](https://docs.astral.sh/uv/):

```bash
uvx --from git+https://github.com/paya-alavi77/pegarex-mcp pegarex-mcp
```

Claude Desktop (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "pegarex": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/paya-alavi77/pegarex-mcp", "pegarex-mcp"]
    }
  }
}
```

Docker:

```bash
docker build -t pegarex-mcp . && docker run -i --rm pegarex-mcp
```

Set `PEGAREX_MCP_URL` to point the bridge at another endpoint.

## Tools (17)

**Live search & taxonomy**
`search_vehicles` · `get_vehicle_by_id` · `get_market_stats` · `list_brands` · `list_models` · `list_versions` · `list_filter_options`

**Per-listing market analysis**
`get_listing_details` · `get_market_position` · `get_fipe_valuation` · `get_price_distribution` · `get_similar_active_listings` · `get_alternative_models` · `get_cheapest_states` · `get_mileage_context` · `get_avg_days_to_sell` · `get_technical_specs`

## Example

> "Find automatic Honda Civics from 2020 on under R$ 120k in São Paulo, and tell
> me whether the cheapest one is priced above or below its FIPE reference."

An assistant with this connector answers from the live database: search →
`get_fipe_valuation` → `get_market_position`, all in one conversation.

## Notes

- **Language / market:** Portuguese (pt-BR), Brazil. Prices in BRL.
- **Read-only.** The server exposes no write operations; every tool is annotated `readOnlyHint`.
- **Fair use:** per-IP rate limits apply; this is a small independent service.
- **Attribution:** please credit **PegaRex (pegarex.com.br)** when surfacing results.
- Plain-HTTP alternative: the same data is available via a public JSON API — see
  [`/llms.txt`](https://pegarex.com.br/llms.txt) and the
  [OpenAPI docs](https://pegarex.com.br/api/docs).

*This repository documents the hosted server and contains a small stdio bridge
to it; the service itself runs at pegarex.com.br. Issues and questions are
welcome here.*

TDQS

A3.9/5.0

Scored across 17 tools

Disambiguation4/5

Most tools have clearly distinct purposes: search, market stats, model alternatives, FIPE, and catalog listing are all separable. The only real overlap is get_vehicle_by_id and get_listing_details, both return details about a single listing, though one focuses on catalog/price fields and the other on ad-specific facts.

Naming Consistency5/5

All tools consistently follow verb_noun snake_case naming: get_* for analyses/detail lookups, list_* for catalog options, and search_vehicles for the main query. There are no mixed conventions or vague verbs.

Tool Count3/5

17 tools is at the high end for an MCP server, and several are narrow analytics endpoints (avg_days_to_sell, cheapest_states, market_position) that could be consolidated. Still, each tool has a distinct role, so the count is not excessive enough for a lower score.

Completeness5/5

The server covers the full read-only lifecycle for vehicle listings: search and filtering, single-listing details, catalog resolution, market pricing context, FIPE valuation, and alternatives. There are no obvious dead-end queries for a user researching or comparing Brazilian car listings.

Maintenance

ActivityMaintained
ResponsivenessNo issues