llm-advisor-mcp
Comparação em tempo real de modelos LLM/VLM com benchmarks, preços e recomendações personalizadas de 5 fontes de dados. Nenhuma chave de API necessária.
Documentação
llm-advisor-mcp
Inglês | Japonês
Dê ao seu assistente de IA conhecimento de LLM/VLM em tempo real. Preços, benchmarks e recomendações — atualizados a cada hora, não a cada ciclo de treinamento.
LLMs têm cortes de conhecimento. Pergunte ao Claude "qual é o melhor modelo de codificação agora?" e ele não consegue responder com dados atuais. Este servidor MCP resolve isso alimentando inteligência de modelo ao vivo diretamente no contexto do seu assistente de IA.
- Zero configuração — Sem chaves de API, sem registro. Um comando para instalar.
- Baixo token — Tabelas Markdown compactas (~300 tokens), não JSON bruto (~3.000 tokens). Seu contexto importa.
- 5 fontes de benchmark — SWE-bench, LM Arena Elo, OpenCompass VLM, Aider Polyglot e preços do OpenRouter unificados em uma visão única.
Casos de Uso
- "Qual é o melhor modelo de codificação agora?" —
list_top_modelscom categoriacoding - "Compare Claude vs GPT vs Gemini" —
compare_modelscom tabela lado a lado - "Encontre um modelo barato com contexto de 1M" —
recommend_modelcom restrições de orçamento - "Quais benchmarks o modelo X tem?" —
get_model_infocom classificações percentuais
Início Rápido
Claude Code
claude mcp add llm-advisor -- npx -y llm-advisor-mcp
Claude Code (Windows)
claude mcp add llm-advisor -- cmd /c npx -y llm-advisor-mcp
Claude Desktop / Cursor / Windsurf
Adicione ao seu arquivo de configuração MCP:
{
"mcpServers": {
"llm-advisor": {
"command": "npx",
"args": ["-y", "llm-advisor-mcp"]
}
}
}
Isso é tudo. Sem chaves de API, sem arquivos .env.
Clientes Compatíveis
| Cliente | Suportado | Método de Instalação |
|---|---|---|
| Claude Code | Sim | claude mcp add |
| Claude Desktop | Sim | configuração JSON |
| Cursor | Sim | configuração JSON |
| Windsurf | Sim | configuração JSON |
| Qualquer cliente MCP | Sim | transporte stdio |
Ferramentas
get_model_info
Especificações detalhadas para um modelo específico: preços, benchmarks, classificações percentuais, capacidades e um exemplo de código de API pronto para uso.
Parâmetros
| Nome | Tipo | Obrigatório | Padrão | Descrição |
|---|---|---|---|---|
model | string | Sim | — | ID do modelo ou nome parcial (ex.: "claude-sonnet-4", "gpt-5") |
include_api_example | boolean | Não | true | Inclui um trecho de código pronto para uso |
api_format | enum | Não | openai_sdk | openai_sdk, curl ou python_requests |
Exemplo de saída
## anthropic/claude-sonnet-4
**Provider**: anthropic | **Modality**: text+image→text | **Released**: 2025-06-25
### Pricing
| Metric | Value |
|--------|-------|
| Input | $3.00 /1M tok |
| Output | $15.00 /1M tok |
| Cache Read | $0.30 /1M tok |
| Context | 200K |
| Max Output | 64K |
### Benchmarks
| Benchmark | Score |
|-----------|-------|
| SWE-bench Verified | 76.8% |
| Aider Polyglot | 72.1% |
| Arena Elo | 1467 |
| MMMU | 76.0% |
### Percentile Ranks
| Category | Percentile |
|----------|------------|
| Coding | P96 |
| General | P95 |
| Vision | P90 |
**Capabilities**: Tools, Reasoning, Vision
### API Example (openai_sdk)
```python
from openai import OpenAI
client = OpenAI(
base_url="https://openrouter.ai/api/v1",
api_key="<OPENROUTER_API_KEY>",
)
response = client.chat.completions.create(
model="anthropic/claude-sonnet-4",
messages=[{"role": "user", "content": "Hello"}],
)
---
### `list_top_models`
Top-ranked models for a category. Includes release dates for freshness awareness.
**Parameters**
| Name | Type | Required | Default | Description |
|------|------|----------|---------|-------------|
| `category` | enum | Yes | — | `coding`, `math`, `vision`, `general`, `cost-effective`, `open-source`, `speed`, `context-window`, `reasoning` |
| `limit` | number | No | `10` | Number of results (1-20) |
| `min_context` | number | No | — | Minimum context window in tokens |
| `min_release_date` | string | No | — | `YYYY-MM-DD`. Excludes models released before this date |
**Example output**
Top 5: codificação
| # | Modelo | Pontuação-chave | Entrada $/1M | Saída $/1M | Contexto | Lançado |
|---|---|---|---|---|---|---|
| 1 | openai/o3-pro | SWE 79.5% | $20.00 | $80.00 | 200K | 2025-06-10 |
| 2 | anthropic/claude-sonnet-4 | SWE 76.8% | $3.00 | $15.00 | 200K | 2025-06-25 |
| 3 | google/gemini-2.5-pro | SWE 75.2% | $1.25 | $10.00 | 1M | 2025-03-25 |
| 4 | openai/o4-mini | SWE 73.6% | $1.10 | $4.40 | 200K | 2025-04-16 |
| 5 | anthropic/claude-opus-4 | SWE 72.5% | $15.00 | $75.00 | 200K | 2025-05-22 |
---
### `compare_models`
Side-by-side comparison for 2-5 models. Best values are **bolded** automatically. Includes a `Released` row so you can spot outdated models at a glance.
**Parameters**
| Name | Type | Required | Default | Description |
|------|------|----------|---------|-------------|
| `models` | string[] | Yes | — | 2-5 model IDs or partial names |
**Example output**
Comparação de Modelos (3 modelos)
| anthropic/claude-sonnet-4 | openai/gpt-4.1 | google/gemini-2.5-pro | |
|---|---|---|---|
| Entrada $/1M | $3.00 | $2.00 | $1.25 |
| Saída $/1M | $15.00 | $8.00 | $5.00 |
| Contexto | 200K | 1M | 1M |
| Saída Máxima | 64K | 32K | 65K |
| SWE-bench | 76.8% | 55.0% | 75.2% |
| Aider Polyglot | 72.1% | 65.3% | 71.8% |
| Arena Elo | 1467 | 1492 | 1445 |
| Visão | Sim | Sim | Sim |
| Ferramentas | Sim | Sim | Sim |
| Raciocínio | Sim | Não | Sim |
| Código Aberto | Não | Não | Não |
| Lançado | 2025-06-25 | 2025-04-14 | 2025-03-25 |
---
### `recommend_model`
Personalized top-3 recommendations. Scores combine weighted benchmarks, pricing, capability bonuses, and a freshness bonus (+3 points for models released within 3 months, +1 within 6 months).
**Parameters**
| Name | Type | Required | Default | Description |
|------|------|----------|---------|-------------|
| `use_case` | enum | Yes | — | `coding`, `math`, `general`, `vision`, `creative`, `reasoning`, `cost-effective` |
| `max_input_price` | number | No | — | Max input price (USD/1M tokens) |
| `max_output_price` | number | No | — | Max output price (USD/1M tokens) |
| `min_context` | number | No | — | Minimum context window in tokens |
| `require_vision` | boolean | No | — | Require image input support |
| `require_tools` | boolean | No | — | Require tool/function calling support |
| `require_open_source` | boolean | No | — | Require open-source license |
| `min_release_date` | string | No | — | `YYYY-MM-DD`. Excludes older models |
**Example output**
Recomendado para: codificação
1. anthropic/claude-sonnet-4 (pontuação: 78)
Entrada: $3.00/1M | Saída: $15.00/1M | Contexto: 200K | Lançado: 2025-06-25 Benchmarks: SWE-bench: 76.8%, Aider: 72.1%, Arena: 1467 Pontos fortes: raciocínio, ferramentas, visão
2. google/gemini-2.5-flash (pontuação: 74)
Entrada: $0.15/1M | Saída: $0.60/1M | Contexto: 1M | Lançado: 2025-05-20 Benchmarks: SWE-bench: 62.9%, Arena: 1445 Pontos fortes: ferramentas, visão, contexto de 1M+
3. openai/o4-mini (pontuação: 71)
Entrada: $1.10/1M | Saída: $4.40/1M | Contexto: 200K | Lançado: 2025-04-16 Benchmarks: SWE-bench: 73.6%, Arena: 1430 Pontos fortes: raciocínio, ferramentas
---
## Data Sources
All data is fetched in real time from free, public APIs. No authentication required.
| Source | Data | Models | Cache TTL |
|--------|------|--------|-----------|
| [OpenRouter](https://openrouter.ai/api/v1/models) | Pricing, context lengths, modalities, release dates | 300+ | 1 hour |
| [SWE-bench](https://github.com/SWE-bench/swe-bench.github.io) | Coding benchmark (Verified leaderboard) | 30+ | 6 hours |
| [LM Arena](https://lmarena.ai) | Human preference Elo ratings | 314+ | 6 hours |
| [OpenCompass VLM](https://opencompass.org.cn) | Vision benchmarks: MMMU, MMBench, OCRBench, AI2D, MathVista | 284+ | 6 hours |
| [Aider Polyglot](https://aider.chat/docs/leaderboards/) | Multi-language coding pass rate | 63+ | 6 hours |
---
## Context Cost
MCP tool definitions and responses consume your LLM's context window. This server is designed to be lean:
| Component | Tokens |
|-----------|--------|
| All 4 tool definitions | ~1,000 |
| Typical tool response | ~250-400 |
For comparison, most MCP servers that return raw JSON consume 3,000-10,000 tokens per response. Every response from llm-advisor-mcp is pre-formatted Markdown, keeping context costs roughly 10x lower.
---
## Architecture
┌──────────────────────────────────────────────┐ │ MCP Client (Claude, etc.) │ └──────────┬───────────────────────────────────┘ │ stdio (JSON-RPC) ┌──────────▼───────────────────────────────────┐ │ llm-advisor-mcp server │ │ │ │ ┌─────────┐ ┌───────────┐ ┌────────────┐ │ │ │ Tools │ │ Registry │ │ Cache │ │ │ └─────────┘ └───────────┘ └────────────┘ │ │ │ │ │ ┌────────────┼────────────┐ │ │ ▼ ▼ ▼ │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │Normalizer│ │Percentile│ │ Fetchers │ │ │ │(slug map)│ │ (5 cats) │ │(5 sources│ │ │ └──────────┘ └──────────┘ └──────────┘ │ └──────────────────────────────────────────────┘ │ │ │ OpenRouter SWE-bench Arena / VLM / Aider
- **TypeScript + ESM** — Single entry point, `tsup` build
- **In-memory cache** — TTL-based (1h pricing, 6h benchmarks), stale-while-revalidate
- **Cross-source normalization** — Maps inconsistent model names (e.g. `Claude 3.5 Sonnet` vs `anthropic/claude-3.5-sonnet`) to canonical IDs
- **Percentile computation** — Ranks across 5 categories (coding, math, general, vision, cost efficiency)
- **Freshness scoring** — Recommendation algorithm gives a bonus to recently released models (+3 for <=3mo, +1 for <=6mo)
- **Zero runtime deps** beyond `@modelcontextprotocol/sdk` and `zod`
---
## Roadmap
| Version | Status | Highlights |
|---------|--------|------------|
| v0.1 | Done | `get_model_info` + `list_top_models` via OpenRouter |
| v0.2 | Done | `compare_models` + `recommend_model` + SWE-bench + Arena Elo |
| v0.3 | Done | VLM benchmarks (MMMU, MMBench, OCRBench, AI2D, MathVista) + Aider Polyglot + percentile ranks + 43 tests |
| v0.4 | **Current** | Release date display, date-based filtering, freshness scoring in recommendations + 51 tests |
| v1.0 | Planned | Community contributions, weekly static data snapshots via GitHub Actions |
---
## Development
```bash
git clone https://github.com/Daichi-Kudo/llm-advisor-mcp.git
cd llm-advisor-mcp
npm install
npm run build # Build with tsup
npm run dev # Run with tsx (hot reload)
npm test # Run 51 unit tests (vitest)
npm run test:watch # Watch mode
Estrutura do projeto
src/
index.ts # Server entry point
types.ts # Shared type definitions
tools/
model-info.ts # get_model_info tool
list-top.ts # list_top_models tool
compare.ts # compare_models tool
recommend.ts # recommend_model tool
formatters.ts # Markdown output formatters
data/
registry.ts # Unified model registry
cache.ts # In-memory TTL cache
normalizer.ts # Cross-source name normalization
percentiles.ts # Percentile rank computation
fetchers/
openrouter.ts # OpenRouter API
swe-bench.ts # SWE-bench leaderboard
arena.ts # LM Arena Elo ratings
vlm-leaderboard.ts # OpenCompass VLM benchmarks
aider.ts # Aider Polyglot scores
static/
api-examples.ts # API code snippet templates
Contribuindo
- Faça um fork do repositório
- Crie um branch de funcionalidade
- Adicione testes para novas funcionalidades
- Execute
npm testpara verificar se todos os 51 testes passam - Envie um pull request
Licença
MIT — construído por Cognisant LLC