Skip to main content
Glama
psaboia
by psaboia

Zona de juegos del servidor MCP

insignia de herrería

Este repositorio es una plataforma para experimentar con un servidor MCP creado con TypeScript. Es una versión personalizada del tutorial y el vídeo sobre cómo crear un servidor MCP, y está pensado como recurso de aprendizaje y plataforma para probar integraciones con Calude Desktop y Cursor IDE.

Fondo

Este proyecto se basa en el material de:

El tutorial original proporcionó una base que he ampliado. Además de los ejemplos del tutorial, planeo añadir herramientas y funcionalidades adicionales para convertir este código en una plataforma robusta para experimentos con el servidor MCP.

Related MCP server: mcp-boilerplate

Características

  • Servidor basado en TypeScript: aprovechamiento de TypeScript para una mejor estructura y comprobación de errores.

  • Diseño modular: fácil de ampliar con nuevos comandos, funciones e integraciones.

  • Listo para integración: diseñado para funcionar con Calude Desktop y Cursor IDE para una experiencia de desarrollo mejorada.

  • Zona de juegos expandible: un entorno sandbox para experimentar con herramientas y modificaciones adicionales más allá de los ejemplos del tutorial.

Empezando

Prerrequisitos

  • Node.js (v12 o superior)

  • npm (o Yarn, según su preferencia)

  • TypeScript (si no está instalado globalmente)

Instalación mediante herrería

Para instalar MCP Server Playground para Claude Desktop automáticamente a través de Smithery :

npx -y @smithery/cli install mcp-server-playground --client claude

Instalación

  1. Clonar el repositorio:

    git clone <repo_url>
    cd mcp-server-playground
  2. Instalar dependencias:

    npm install
  3. Construir el proyecto:

    npm run build

Configuración

Este proyecto utiliza variables de entorno. Cree un archivo .env para configurar sus opciones. Si en el futuro se proporciona un archivo de ejemplo ( .env.example ), úselo como plantilla.

Desarrollo

  • Integración IDE:

    • Diseñado para funcionar sin problemas con Cursor IDE y Calude Desktop.

    • Aproveche las herramientas y extensiones integradas compatibles con estos IDE para maximizar la productividad.

  • Ampliación del proyecto:

    • Siéntase libre de agregar nuevos comandos, integraciones o modificar funcionalidades existentes.

    • La estructura modular del servidor facilita la incorporación de herramientas y funciones adicionales.

Estructura del proyecto

mcp-server-playground/
├── src/                # Source code directory
│   └── index.ts       # Main server implementation
├── build/             # Compiled JavaScript files
├── package.json       # Project dependencies and scripts
├── tsconfig.json     # TypeScript configuration
└── README.md         # Project documentation

Scripts disponibles

  • npm run build : compila código TypeScript y establece los permisos adecuados

  • npm run prepare : ejecuta el script de compilación (útil para los ganchos de Git)

  • npm run watch : vigila los cambios en los archivos TypeScript

  • npm run inspector : ejecuta la herramienta de inspección MCP

Contribuyendo

¡Agradecemos sus contribuciones! Si tiene sugerencias, mejoras o nuevas integraciones, por favor, bifurque el repositorio y cree una solicitud de extracción con sus cambios.

Referencias

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Notas

Este proyecto es un entorno sandbox diseñado para probar diversas adaptaciones e integraciones para un servidor MCP. Se realizarán actualizaciones y ampliaciones a medida que se desarrollen nuevas herramientas e ideas.

Hoja de ruta

  • [ ] Implementar integraciones de herramientas adicionales más allá de los ejemplos del tutorial

  • [ ] Agregar documentación completa para cada herramienta

  • [ ] Crear integraciones de ejemplo con Calude Desktop

  • [ ] Desarrollar herramientas personalizadas para la integración de Cursor IDE

  • [ ] Agregar marco de prueba y ejemplos

Available Tools

2 tools
calculate_sumB

Add two numbers together

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('Add') but does not cover traits like error handling, performance, or side effects. For a simple tool, this is a gap, though not severe, as addition is a basic operation with minimal behavioral complexity.

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?

The description is a single, direct sentence with no wasted words, making it highly concise and front-loaded. It efficiently communicates the core function without unnecessary elaboration.

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?

Given the tool's low complexity (simple addition with two parameters), no annotations, and no output schema, the description is adequate but minimal. It covers the basic purpose but lacks details on usage, behavior, or output, making it incomplete for more nuanced agent decisions.

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 description mentions 'two numbers', which aligns with the two parameters 'a' and 'b' in the schema, but schema description coverage is 0%, so no details are provided in the schema. The description adds minimal semantics by indicating the parameters are numbers for addition, but does not explain their roles or constraints beyond that.

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 'Add two numbers together' clearly states the verb ('Add') and resource ('two numbers'), making the purpose specific and understandable. However, it does not differentiate from sibling tools, as the only sibling is 'httpbin_json', which is unrelated, so differentiation is not needed but not explicitly addressed.

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

Usage Guidelines2/5

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

The description provides no guidance on when to use this tool versus alternatives or in what context it should be applied. It lacks any mention of prerequisites, constraints, or comparison with other tools, leaving usage entirely implicit.

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

httpbin_jsonC

Returns data about slide show

ParametersJSON Schema
NameRequiredDescriptionDefault
aNo

TDQS

C2.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'Returns data', which suggests a read-only operation, but doesn't specify any behavioral traits like error handling, rate limits, authentication needs, or what 'slide show' refers to. This leaves significant gaps in understanding how the tool behaves.

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

Conciseness3/5

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

The description is a single sentence that is concise, but it's under-specified rather than efficiently informative. It's front-loaded but lacks substance, making it borderline adequate in structure but not truly helpful.

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

Completeness2/5

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

Given the complexity (1 parameter, no annotations, no output schema), the description is incomplete. It doesn't explain what data is returned, how 'a' is used, or any context about slide shows, leaving the agent with insufficient information to effectively use the tool.

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

Parameters2/5

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

The input schema has 1 parameter 'a' of type number with 0% description coverage, and the description adds no information about parameters. It doesn't explain what 'a' represents, how it relates to slide shows, or its purpose, failing to compensate for the low schema coverage.

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

Purpose2/5

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

The description states the tool 'Returns data about slide show', which provides a vague purpose without specifying what kind of data or what operation is performed. It doesn't clearly distinguish from the sibling tool 'calculate_sum', and while it's not a tautology (it adds 'about slide show'), it remains too general to be helpful for precise tool selection.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus the sibling 'calculate_sum' or any alternatives. The description implies it's for slide show data, but without context on when it's appropriate or what scenarios it addresses, leaving the agent with minimal usage direction.

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. 2 tool updates
    • First observedcalculate_sum
    • First observedhttpbin_json

TDQS

C2.5/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have completely distinct purposes: calculate_sum performs a mathematical addition operation, while httpbin_json returns data about a slide show. There is no overlap or ambiguity between these functions, making it easy for an agent to select the correct tool.

Naming Consistency3/5

The naming is mixed: calculate_sum uses a verb_noun pattern, but httpbin_json is more of a noun-based name with a prefix. While both are readable, they don't follow a consistent convention, which could cause minor confusion in a larger set.

Tool Count2/5

With only 2 tools, this server feels thin and under-scoped for a 'Playground' purpose, which typically implies a broader set of utilities. The tools are too few to meaningfully explore or test MCP capabilities, suggesting an incomplete implementation.

Completeness1/5

The tool surface is severely incomplete for a 'Playground' domain, which should offer diverse functionalities. There are obvious gaps, such as missing basic operations like subtraction, multiplication, or other HTTP-related tools, making it inadequate for comprehensive agent workflows.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript-based server project that can be integrated with Cursor IDE as an MCP (Model Control Protocol) server, enabling enhanced development capabilities.
    134
    -
  • A
    license
    A
    quality
    A
    maintenance
    Production-ready template for building MCP servers with TypeScript, featuring example tools and resources, and Claude Desktop integration.
    1
    4 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript template for building MCP servers, enabling developers to create custom tools for AI assistants like Claude.
    11 npm
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A TypeScript MCP server boilerplate with example tools (calculator, greet) and resources (system info), ready for extension and integration with Cursor.
    -