Skills Agentes

Verify Local Mcp

Verifica el servidor MCP de OpenSEO de punta a punta en un dev server local: corrección a nivel de protocolo contra DataForSEO real, y luego un probe con agente headless que prueba la ergonomía de las herramientas.

Estrellas
16k

en todo el repo

Actividad
59

0–100, la ruta de este skill

Actualizado
hace 14 días

último commit aquí

Commits
1

últimos 90 días

Contexto
1.3k tok

100 tok en reposo

Paquete
1 archivo

5 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add every-app/open-seo --skill verify-local-mcp --agent claude-code

Se instala solo en este repositorio.

Este skill makes network requests.

Qué hace

  • Verifica el servidor MCP de OpenSEO de punta a punta en un dev server local, en dos capas.
  • Capa de protocolo: JSON-RPC crudo contra `/mcp` para afirmar formas exactas y forzar casos límite (reanudar `taskId`, resultados vacíos, entradas inválidas) con llamadas reales y facturadas a DataForSEO a profundidad 10-20.
  • Capa de consumidor: lanza un subproceso headless de Claude conectado como cliente MCP real y le da una tarea natural, sin nombrar las herramientas, para probar si las descripciones bastan.
  • Aplica una rúbrica de ergonomía: selección de herramienta a la primera, esquemas que documentan cada restricción, tamaño de salida por fila, errores accionables, copy de async y honestidad de créditos.
  • Itera: arreglar, el hot-reload recoge el cambio, re-verificar por curl lo tocado y relanzar el probe de consumidor una vez por ronda.

Úsalo cuando

  • Después de añadir o cambiar herramientas MCP, o cuando se pide comprobar que el MCP "funciona" o "es ergonómico".

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Verifica el MCP local de OpenSEO de punta a punta
    • Comprueba que las herramientas MCP nuevas son ergonómicas para un agente
    • Prueba el ciclo de vida de las herramientas MCP en cola

    SKILL.md

    En inglés

    Verify local MCP

    Two layers, in order. The protocol layer proves the server and provider behave; the consumer layer proves an agent that has never seen the code can use the tools well. They catch different bugs — protocol testing found DataForSEO quirks (zoom-dependent empty SERPs), the consumer probe found ergonomics failures (9KB provider rows overflowing client token budgets, fractional inputs rejected upstream with raw provider errors). Do both.

    1. Boot

    • .env.local needs AUTH_MODE=local_noauth and DATAFORSEO_API_KEY (base64 of login:password). Never print the key.
    • Start pnpm dev:agents in the background. The server URL is branch-prefixed: http://<branch-suffix>.open-seo.localhost:1355 (the exact URL is printed on boot; logs tee to .logs/dev-server.log).
    • With local_noauth, /mcp needs no token. Vite hot-reloads server code, so fix → re-call without restarting.

    2. Protocol smoke (cheap, deterministic)

    Raw JSON-RPC against /mcp — the layer for asserting exact shapes and driving edge cases (resume taskIds, empty results, invalid inputs):

    curl -sS http://<url>/mcp \
      -H 'content-type: application/json' -H 'accept: application/json, text/event-stream' \
      -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
    # tools/call: {"method":"tools/call","params":{"name":"<tool>","arguments":{...}}}
    
    • Bootstrap: list_projects, then create_project if empty — most tools need a projectId.
    • Test the happy path AND at least one edge per changed tool: an empty result (obscure query), an invalid identifier, and for queued tools the full lifecycle including resuming with the returned taskId.
    • These are real, billed DataForSEO calls (metering itself short-circuits in local_noauth — billing needs unit tests, not this). Keep depths 10–20.

    3. Consumer probe (the ergonomics test)

    Spawn a headless Claude subprocess connected as a real MCP client. Write a config:

    {
      "mcpServers": {
        "openseo-local": { "type": "http", "url": "http://<url>/mcp" }
      }
    }
    

    Then run a NATURAL task — never name the tools; whether the model finds them from descriptions alone is the test:

    claude -p "<natural task a customer would ask>. Keep spend minimal: depths 10-20, one 3x3 grid max, ~10 paid calls.
    Deliver two sections: 1. FINDINGS — the task result. 2. MCP FEEDBACK — critique the MCP as a first-time consumer:
    were descriptions enough to pick tools without trial and error? confusing schemas, surprising output shapes or sizes,
    unclear errors, credit-cost surprises? Did async/taskId flows behave as described? List anything that made you hesitate or retry." \
      --mcp-config mcp-local.json --strict-mcp-config \
      --allowedTools "mcp__openseo-local,mcp__openseo-local__*" \
      --model sonnet --max-turns 30
    

    Use --model sonnet as the typical-client proxy — if sonnet navigates it cold, weaker clients likely can too. Read FINDINGS for correctness (did it get real, sensible data?) and MCP FEEDBACK for the rubric below.

    4. Ergonomics rubric — what feedback to act on

    • Tool selection: the probe should pick the right tool first try. Retries or wrong-tool detours mean a description needs a sharper "use this when / not this" sentence.
    • Schemas: every constraint the provider enforces silently must be in the field's .describe() (units, whole-number requirements, defaults, what's ignored when). If the probe guessed-and-retried an input, encode the rule server-side (coerce/round) or document it — prefer coercing.
    • Output size: budget roughly a few KB per row. Provider rows carrying popular_times/attribute trees/photo URLs must be trimmed to the fields the tool's job needs; point to the single-entity tool for the full shape.
    • Errors: actionable, never a raw upstream field name without a hint at the fix. Failures after a billed step must keep the recovery handle (e.g. the taskId) in the message.
    • Async copy: descriptions must match typical latency ("usually completes within this call") and the resume path must actually work when driven by the probe, not just by curl.
    • Credit honesty: each description's credit sentence matches reality, including cache-hit and resume paths.

    5. Iterate and clean up

    Fix findings → hot-reload picks them up → re-verify just the changed behavior via curl (cheap) → rerun the full consumer probe once per iteration round (it re-tests selection and flow, not just the fix). When done: stop the dev server background task, run the repo's tests/ci:check, and fold genuine provider quirks into code comments or tests so the next agent doesn't rediscover them.

    Reproducido de every-app/open-seo bajo licencia MIT. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Necesita `.env.local` con `AUTH_MODE=local_noauth` y `DATAFORSEO_API_KEY`, `pnpm dev:agents` en marcha y un binario `claude` para el probe de consumidor; las llamadas a DataForSEO se facturan.

    Necesita en el PATH:curl

    Detalles

    Creador
    every-app
    Categoría
    Testing y QA
    Licencia
    MIT
    Recursos incluidos
    Solo SKILL.md
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de every-app/open-seo

    Este repo incluye 19 skills. Si instalas uno, normalmente ya tienes los demás.

    Entra en un modo de coach de OpenSEO cercano que explica los flujos, recomienda los siguientes pasos y ayuda a usar bien agentes, búsqueda web, scraping y datos MCP.

    Costo de contexto al activarse
    1.6k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    seo geo

    Rellena el contexto compartido de OpenSEO de un proyecto (alcance del sitio, objetivos, posicionamiento, competidores, páginas clave y preferencias), más comprobaciones de MCP y entrada de Search Console.

    Costo de contexto al activarse
    2.3k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    seo geo

    Crea o actualiza una skill en este repositorio de la forma correcta: hogar canónico en `.agents/skills`, marca interna o pública, symlinks en `.claude/skills` y registro en las docs públicas para las skills de producto.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    herramientas desarrollo

    Audita un sitio y entrega un informe SEO de una página, en lenguaje llano, que cualquiera puede accionar, centrado en una única acción para esta semana.

    Costo de contexto al activarse
    1.8k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 12 días
    seo geo

    Audita un Google Business Profile, lo compara con competidores locales y mapea la visibilidad en Google Maps alrededor de una ubicación para decidir qué arreglar primero.

    Costo de contexto al activarse
    1.7k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    seo geo

    Descubre oportunidades de palabras clave, evalúa métricas y SERPs y guarda o etiqueta los términos prometedores usando los datos MCP de OpenSEO.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    seo geo

    Skills relacionados

    Toolkit para interactuar con y probar aplicaciones web locales con Playwright: verificar la funcionalidad del frontend, depurar el comportamiento de la UI, capturar pantallas del navegador y ver sus logs.

    Costo de contexto al activarse
    985 tok
    Tamaño del paquete
    6 archivos
    Última actualización
    el mes pasado
    testing qa

    Registra en `.agents/PAPERCUTS.md` la fricción real y recurrente del repositorio (setup confuso, comandos inestables, errores engañosos, archivos generados obsoletos) y también revisa, deduplica y resuelve las entradas existentes.

    Costo de contexto al activarse
    994 tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    herramientas desarrollo

    Descubre oportunidades de palabras clave, evalúa métricas y SERPs y guarda o etiqueta los términos prometedores usando los datos MCP de OpenSEO.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 12 días
    seo geo