Skip to main content
Glama
skyzhao1223/wheel-hub

skyzhao1223/wheel-hub

⚙️ wheel-hub

Deja de reinventar la rueda. Busca, puntúa y adopta las mejores soluciones de código abierto — antes de escribir una sola línea de código.

wheel-hub es un servidor MCP + CLI que hace que tanto los agentes de programación de IA como los humanos consulten primero el ecosistema de código abierto: dado un problema o una funcionalidad, encuentra soluciones existentes y las puntúa según popularidad, impulso, mantenimiento y confianza, y luego te dice si adoptar, adaptar, inspeccionar o evitar.

Por qué

Todo desarrollador (y todo agente de IA) reconstruye desde cero autenticación, planificadores, rastreadores y paneles de administración — no porque no existan mejores ruedas, sino porque nadie las busca primero. wheel-hub hace que «mirar primero» sea la opción por defecto.

Related MCP server: reuse-before-generate

Instalación

Servidor MCP (para Claude Code, opencode, Cursor, …)

npx @wheel-hub/mcp

Ejemplo con Claude Code:

claude mcp add wheel-hub --env GITHUB_TOKEN=ghp_xxx -- npx @wheel-hub/mcp

Ejemplo de configuración JSON genérica (funciona en la mayoría de los clientes MCP):

{
  "mcpServers": {
    "wheel-hub": {
      "command": "npx",
      "args": ["@wheel-hub/mcp"],
      "env": { "GITHUB_TOKEN": "ghp_xxx" }
    }
  }
}

Nota: Los clientes MCP solo reenvían a los servidores una lista blanca de variables de entorno. Pasa siempre GITHUB_TOKEN explícitamente mediante la configuración env del cliente, o el servidor se ejecutará sin autenticación a 60 solicitudes/hora y alcanzará rápidamente los límites de tasa.

Luego solo tienes que pedirle a tu agente: «antes de implementar, usa wheel-hub para comprobar qué existe para la programación de trabajos en segundo plano».

CLI (para humanos)

# one-off
npx @wheel-hub/cli find "SSO login" --lang typescript
npx @wheel-hub/cli evaluate ollama/ollama

# or install for the `wheel-hub` command
npm i -g @wheel-hub/cli
wheel-hub find "SSO login"

Herramientas

Herramienta

Descripción

search_oss

Busca en GitHub soluciones para un problema

evaluate_repo

Puntúa un repositorio (0–100) con un veredicto y razones

compare_alternatives

Encuentra alternativas y evalúa cada una — ejecútalo antes de escribir código nuevo

Modelo de puntuación

Puntuación compuesta (0–100) ponderada en cuatro dimensiones:

  • Popularidad (30%) — masa de estrellas en escala logarítmica

  • Impulso (25%) — crecimiento de estrellas/día + actualidad de los pushes

  • Mantenimiento (30%) — frescura de los commits + ratio de acumulación de incidencias

  • Confianza (15%) — permisividad de la licencia, estado de archivado

Veredictos: ≥75 adopt · ≥55 adapt · ≥35 inspect · <35 / archived avoid

Configuración

GITHUB_TOKEN (opcional) — eleva el límite de tasa de la API de GitHub de 60 a 5.000 solicitudes/hora. Muy recomendable para uso real; consulta la configuración de MCP anterior para saber cómo pasarlo.

Paquetes

Paquete

Descripción

@wheel-hub/core

Motor de agregación y puntuación de GitHub

@wheel-hub/mcp

Servidor MCP para agentes de IA

wheel-hub

CLI de terminal

Hoja de ruta

  • Respaldo de licencia para repositorios NOASSERTION: analizar el propio archivo de licencia (p. ej., el COPYING del kernel declara GPL-2.0, pero GitHub lo clasifica como «Other»)

  • Minería de Awesome-list como fuente de señal secundaria

  • Curvas de historial de estrellas mediante datos de OSSInsight

  • wheel-hub watch — recibe notificaciones cuando las dependencias de tu stack se vuelvan obsoletas

  • Persistencia de puntuaciones + resumen semanal

Licencia

MIT

Available Tools

3 tools
compare_alternativesA

Search for alternatives to a feature/tool and evaluate each one. Use before writing new code to avoid reinventing the wheel. Returns a ranked verdict table.

NameRequiredDescriptionDefault
topNoNumber of candidates to evaluate (default 5)
queryYesFeature or capability to find alternatives for
languageNoPreferred programming language

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the behavioral burden alone. It discloses the output shape ('ranked verdict table') and implies an evaluation step over multiple candidates, but says nothing about read-only safety, latency/cost of evaluating candidates, or how many sources it queries.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences with zero filler, front-loaded on what it does before the when-to-use hint and the return note. It could be marginally tighter, but essentially every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully states the return format (ranked verdict table), and the simple 3-parameter surface is fully covered by the schema. The remaining gap is behavioral – nothing about whether it is read-only or slow – but for this tool class that is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all three parameters (query, top, language) are already documented with defaults. The description adds no syntax, format, or constraint detail beyond the schema, which is the expected baseline when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description combines a specific action (search for alternatives + evaluate each) with a clear resource (a feature/tool), which an agent can grasp immediately. It doesn't explicitly distinguish itself from siblings like search_oss, but the 'evaluate each one' plus 'ranked verdict table' framing sets it apart from a plain search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives an explicit usage trigger: 'Use before writing new code to avoid reinventing the wheel.' That tells the agent when to reach for it. It stops short of naming alternatives or exclusion conditions (e.g., when to prefer search_oss or evaluate_repo), so it isn't a full routing rule.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_repoA

Score a single GitHub repository (0-100) on popularity, momentum, maintenance and trust, with an adopt/adapt/inspect/avoid verdict.

NameRequiredDescriptionDefault
repoYesRepository in 'owner/name' format or a GitHub URL

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden. It usefully discloses the scoring model (popularity, momentum, maintenance, trust), the numeric range, and the verdict taxonomy, but says nothing about auth requirements, rate limits, latency, or how a repo that cannot be fetched is handled.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence, front-loaded with the verb and resource, followed by the scoring dimensions and output categories. Every clause carries information; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description steps in to describe the return payload - a 0-100 score across four named dimensions plus a four-level verdict - which is what an agent needs to interpret results. Error handling for malformed or missing repos is the only notable omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, repo, is fully documented in the schema ('owner/name' format or GitHub URL), which matches the description's scope but adds no syntax or format detail beyond it. Baseline 3 applies when the schema already covers the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (score) and resource (a single GitHub repository), plus the output scale (0-100), the scoring dimensions, and the verdict categories. 'Single' quietly distinguishes it from compare_alternatives, but the description never names the siblings explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: scoring one repo suggests this is for evaluating an individual candidate rather than searching (search_oss) or comparing options (compare_alternatives). No explicit when-to-use, when-not-to-use, or named alternatives are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_ossA

Search GitHub for high-quality open-source solutions before implementing a feature. Returns ranked candidates with stars and descriptions.

NameRequiredDescriptionDefault
limitNoMax results (default 10)
queryYesWhat to look for, e.g. 'background job scheduler', 'SSO login'
languageNoFilter by programming language
min_starsNoMinimum star count (default 100)

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden and does disclose return shape ("ranked candidates with stars and descriptions") and an implicit quality filter. It omits operational context that matters for a GitHub-backed search: authentication expectations, rate limits, and whether results are cached or live. Adequate but incomplete for a zero-annotation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no filler, and the core purpose is front-loaded ahead of the return-shape detail. Every clause earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a four-parameter search tool with a fully documented schema and no output schema, the description covers purpose, trigger, and the shape of results. It stops short of the context an agent would want in the absence of annotations and sibling routing hints — no rate-limit or auth note, and no signal about handing results to evaluate_repo or compare_alternatives.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters (query, language, min_stars, limit) are already self-documenting, which sets the baseline at 3. The description's phrase "high-quality" loosely gestures at the min_stars default but adds no format, default, or interaction detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description pairs a specific verb ("Search") with a specific resource and scope ("GitHub for high-quality open-source solutions") and states the agent-facing goal ("before implementing a feature"). It is unambiguous on its own, though it never contrasts itself with evaluate_repo or compare_alternatives, so sibling differentiation is left implicit.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Before implementing a feature" gives a clear situational trigger for reaching for this tool rather than writing code from scratch. There are no exclusions or named alternatives, however, so the agent is not told when to skip this in favor of evaluate_repo or compare_alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedcompare_alternatives
    • First observedevaluate_repo
    • First observedsearch_oss

TDQS

A3.7/5.0

Scored across 3 tools

Disambiguation3/5

evaluate_repo clearly targets a single known repo, but search_oss and compare_alternatives heavily overlap — both search GitHub for solutions before coding and return ranked candidates/verdicts. An agent could easily pick the wrong one since the boundary (finding a solution vs. finding alternatives to something) is subtle.

Naming Consistency4/5

All three follow a verb_ prefix pattern (evaluate_repo, search_oss, compare_alternatives), which is predictable. Minor inconsistency in the noun suffixes (repo vs. oss vs. alternatives) keeps it from being fully uniform.

Tool Count4/5

Three tools is a little thin but well-scoped for a narrow 'avoid reinventing the wheel' purpose. Each tool earns its place in the discover-then-evaluate flow.

Completeness4/5

The surface covers the core lifecycle: search for candidates, compare alternatives, and score a specific repo. Minor gaps like fetching detailed repo metadata or readme content exist, but core workflows are covered.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A local MCP server that gives AI agents access to developer tooling — GitHub (read-only), documentation search, and web research — via stdio transport.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that helps coding agents research and prepare GitHub contributions by gathering repository guidance, related work, code context, and validation evidence into a local SQLite corpus, without ever writing to GitHub.
    140 npm
    32
    MIT