Skip to main content
Glama
robinafaruqia

ai-backend-performance-mcp

ai-backend-performance-mcp

Servidor MCP de análisis estático para problemas de rendimiento en backend Node.js. Los agentes de IA pueden inspeccionar un proyecto en busca de anti-patrones de consultas de base de datos, cuellos de botella asíncronos, errores de pooling de conexiones y problemas de higiene de dependencias, sin modificar tu código.

¿Por qué este proyecto?

Los problemas de rendimiento en backend a menudo se esconden a simple vista: consultas N+1 en bucles, clientes creados por petición, awaits secuenciales que podrían ejecutarse en paralelo, o dependencias mal clasificadas en package.json. Este servidor MCP expone esos patrones como hallazgos estructurados y respaldados por evidencia que los asistentes de codificación con IA pueden razonar.

Qué hace

  • Análisis estático de solo lectura de archivos fuente JavaScript/TypeScript

  • Seis herramientas MCP enfocadas en categorías comunes de rendimiento en backend

  • Hallazgos estructurados con severidad, confianza, fragmentos de código y recomendaciones

  • Distingue evidencia confirmada de problemas potenciales

Qué no hace

  • Ejecutar tu aplicación o código del repositorio

  • Modificar archivos, instalar paquetes o cambiar índices

  • Reemplazar el perfilado, las pruebas de carga o el análisis EXPLAIN de la base de datos

Related MCP server: DepHealth MCP

Arquitectura

flowchart TD
  Client[MCP Client / AI Agent]
  Server[MCP Server]
  Tools[MCP Tools]
  Engine[Analysis Engine]
  Analyzers[Individual Analyzers]
  Findings[Structured Findings]

  Client --> Server
  Server --> Tools
  Tools --> Engine
  Engine --> Analyzers
  Analyzers --> Findings
  Findings --> Tools
  Tools --> Server
  Server --> Client

Consulta docs/architecture.md para detalles de las capas.

Analizadores

Analizador

Detecta

Consultas de base de datos

Patrones N+1, búsquedas/consultas sin límite

Índices de MongoDB

Campos de filtro/orden sin createIndex correspondiente

Patrones asíncoticos

await en bucles, awaits secuenciales, operaciones síncronas bloqueantes

Pool de conexiones

Creación de clientes/pools en handlers o bucles

Dependencias

Dependencias no utilizadas, clasificación dev/prod incorrecta, estadísticas de lockfile

Herramientas MCP

Herramienta

Descripción

analyze_project

Escaneo completo con hallazgos agrupados y resumen

analyze_database_queries

Patrones de consultas MongoDB/PostgreSQL

analyze_indexes

Heurísticas de cobertura de índices MongoDB

analyze_async_patterns

Patrones de rendimiento async/await

analyze_connection_pooling

Anti-patrones del ciclo de vida de conexiones

analyze_dependencies

Higiene de package.json / lockfile

Referencia de herramientas: docs/tools.md

Instalación

npm install ai-backend-performance-mcp

O ejecuta directamente:

npx ai-backend-performance-mcp

Configuración de MCP

Añade a la configuración de tu cliente MCP (ejemplo para Cursor / Claude Desktop):

{
  "mcpServers": {
    "backend-performance": {
      "command": "npx",
      "args": ["-y", "ai-backend-performance-mcp"],
      "env": {}
    }
  }
}

Para desarrollo local:

{
  "mcpServers": {
    "backend-performance": {
      "command": "node",
      "args": ["/absolute/path/to/ai-backend-performance-mcp/dist/index.js"]
    }
  }
}

Uso

Invoca cualquier herramienta con un projectPath que apunte a un repositorio backend de Node.js:

{
  "projectPath": "/path/to/your/api"
}

Ejemplo de salida (truncado)

{
  "projectPath": "/app/examples/sample-node-api",
  "technologies": ["express", "mongodb"],
  "metadata": {
    "packageName": "sample-node-api",
    "packageVersion": "1.0.0",
    "sourceFileCount": 4
  },
  "findings": [
    {
      "category": "pooling",
      "severity": "critical",
      "title": "Connection or client created in request handler",
      "evidence": {
        "kind": "confirmed",
        "snippet": "const client = await MongoClient.connect(...)"
      },
      "confidence": 0.9,
      "recommendation": "Create a shared client/pool at module scope and reuse it."
    }
  ],
  "summary": {
    "totalFindings": 6,
    "confirmedCount": 3,
    "potentialCount": 3
  }
}

Prueba el proyecto demo incluido en examples/sample-node-api.

Seguridad

  • Solo lectura: nunca escribe en los proyectos analizados

  • Validación de rutas: evita el traversal fuera de projectPath

  • Sin ejecución de código: solo analiza el texto fuente; no ejecuta código del repositorio

  • Entrada no confiable: trata los repositorios analizados como no confiables

Limitaciones

  • Solo análisis estático; los hallazgos que dependen del estado del clúster permanecen como potential

  • Las consultas dinámicas require() / generadas en tiempo de ejecución no se rastrean completamente

  • El análisis de índices compara solo las llamadas createIndex dentro del repositorio (no los índices gestionados por Atlas/ops) y permanece en silencio cuando el repositorio no define ninguno

  • Array.find, $in/ANY() por lotes, búsquedas por _id y clientes de base de datos a nivel de módulo no se tratan como problemas

  • Los awaits secuenciales se marcan solo cuando no consumen enlaces anteriores; Promise.all nunca se reporta como hallazgo

  • La detección de dependencias no utilizadas se basa en el escaneo de importaciones

  • Las reglas específicas de Redis están planificadas pero no implementadas en v0.1.0

Desarrollo

git clone https://github.com/robinafaruqia/ai-backend-performance-mcp.git
cd ai-backend-performance-mcp
npm install
npm run typecheck
npm run lint
npm test
npm run build

Consulta docs/development.md.

Pruebas

npm test

Los proyectos de prueba bajo tests/fixtures/ emparejan código problemático y válido para consultas N+1, índices, async, pooling y dependencias, de modo que los analizadores no se activen en cada await, consulta, bucle o conexión.

Hoja de ruta

  • Analizador de Redis/caché

  • Reglas de consulta específicas para Prisma/TypeORM

  • Caché de ProjectContext

  • Exportación de informes SARIF/JSON

  • Umbrales de severidad configurables

Contribuciones

¡Las contribuciones son bienvenidas! Consulta CONTRIBUTING.md y CODE_OF_CONDUCT.md.

Licencia

MIT — consulta LICENSE.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to perform sophisticated static code analysis using Joern's Code Property Graph technology. Supports multi-language analysis, security vulnerability detection, and code quality assessment through isolated Docker environments.
    151
    GPL 3.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables MCP-compatible clients to inspect Next.js codebases, analyze App Router and Pages Router structure, discover API routes, and audit build performance through controlled tools.
    8
    MIT

View all related MCP servers

Related MCP Connectors

  • Provide AI-powered real-time analysis and intelligence on NPM packages, including security, depend…

  • Package intelligence for AI agents across npm, PyPI, crates.io and deps.dev. No API keys.

  • Lints + auto-fixes how AI coding agents discover any new product. 24 rules, 6 tools, score 0-100.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/robinafaruqia/ai-backend-performance-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server