Skip to main content
Glama

Custom Context MCP Server

by omer-ayhan

Servidor MCP de contexto personalizado

Este servidor de Protocolo de Contexto de Modelo (MCP) proporciona herramientas para estructurar y extraer datos del texto de acuerdo con plantillas JSON.

Características

Transformación de texto a JSON

  • Agrupar y estructurar texto basado en plantillas JSON con marcadores de posición
  • Extraer información de texto generado por IA en formatos JSON estructurados
  • Soporte para cualquier estructura JSON arbitraria con marcadores de posición anidados
  • Extracción inteligente de pares clave-valor del texto
  • Procesar los resultados de IA en datos estructurados para aplicaciones posteriores

Empezando

Instalación

npm install

Ejecutando el servidor

npm start

Para desarrollo con recarga en caliente:

npm run dev:watch

Uso

Este servidor MCP proporciona dos herramientas principales:

1. Agrupar texto por JSON ( group-text-by-json )

Esta herramienta toma una plantilla JSON con marcadores de posición y genera un mensaje para que una IA agrupe el texto de acuerdo con la estructura de la plantilla.

{ "template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }" }

La herramienta analiza la plantilla, extrae claves de marcador de posición y devuelve un mensaje que guía a la IA para extraer información en un formato clave-valor.

2. Texto a JSON ( text-to-json )

Esta herramienta toma la salida de texto agrupada del paso anterior y la convierte en un objeto JSON estructurado basado en la plantilla original.

{ "template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }", "text": "type: pen\ntext: This is a blue pen" }

Extrae pares clave-valor del texto y los estructura según la plantilla.

Ejemplo de flujo de trabajo

  1. Defina una plantilla JSON con marcadores de posición:
    { "item": { "name": "<name>", "price": "<price>", "description": "<description>" } }
  2. Utilice group-text-by-json para crear un mensaje para IA:
    • La herramienta identifica claves de marcador de posición: nombre, precio, descripción
    • Genera un mensaje que indica a la IA que agrupe la información mediante estas claves
  3. Envía el mensaje a un modelo de IA y recibe texto agrupado:
    name: Blue Pen price: $2.99 description: A smooth-writing ballpoint pen with blue ink
  4. Utilice text-to-json para convertir el texto agrupado a JSON:
    • Resultado: GXP8

Formato de plantilla

Las plantillas pueden incluir marcadores de posición en cualquier lugar dentro de una estructura JSON válida:

  • Utilice corchetes angulares para definir marcadores de posición: <name> , <type> , <price> , etc.
  • La plantilla debe ser una cadena JSON válida
  • Los marcadores de posición pueden estar en cualquier nivel de anidación.
  • Admite estructuras anidadas complejas

Plantilla de ejemplo con marcadores de posición anidados:

{ "product": { "details": { "name": "<name>", "category": "<category>" }, "pricing": { "amount": "<price>", "currency": "USD" } }, "metadata": { "timestamp": "2023-09-01T12:00:00Z" } }

Detalles de implementación

El servidor funciona mediante:

  1. Análisis de plantillas JSON para extraer claves de marcador de posición
  2. Generar indicaciones que guíen a los modelos de IA para extraer información mediante estas claves
  3. Análisis de texto generado por IA para extraer pares clave-valor
  4. Reconstrucción de objetos JSON basados en la estructura de la plantilla original

Desarrollo

Prerrequisitos

  • Node.js v18 o superior
  • npm o hilo

Construir y ejecutar

# Install dependencies npm install # Build the project npm run build # Run the server npm start # Development with hot reloading npm run dev:watch

Recarga en caliente personalizada

Este proyecto incluye una configuración de recarga en caliente personalizada que combina:

  • nodemon : vigila los cambios de archivos en el directorio src y reconstruye los archivos TypeScript
  • browser-sync : actualiza automáticamente el navegador cuando cambian los archivos de compilación
  • Ejecución concurrente : ejecuta ambos servicios simultáneamente con sincronización de salida

La configuración se realiza en:

  • nodemon.json : controla la observación y reconstrucción de TypeScript
  • package.json : se usa simultáneamente para ejecutar nodemon y browser-sync juntos

Para utilizar la función de recarga en caliente personalizada:

npm run dev:watch

Esto crea un entorno de desarrollo donde:

  1. Los archivos TypeScript se reconstruyen automáticamente cuando se modifican
  2. El servidor MCP se reinicia con el código actualizado
  3. Los navegadores conectados se actualizan para mostrar los últimos cambios

Uso con MCP Inspector

Puede utilizar el Inspector MCP para depurar:

npm run dev

Esto ejecuta el servidor con el Inspector MCP para la depuración visual de solicitudes y respuestas.

Related MCP Servers

  • A
    security
    F
    license
    A
    quality
    A TypeScript-based template for developing Model Context Protocol servers with features like dependency injection and service-based architecture, facilitating the creation and integration of custom data processing tools.
    Last updated -
    1
    9
    4
    TypeScript
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server that extracts embedded data (such as i18n translations or key/value configurations) from TypeScript/JavaScript source code into structured JSON configuration files.
    Last updated -
    2
    426
    6
    JavaScript
    MIT License
  • A
    security
    A
    license
    A
    quality
    A Model Context Protocol server that converts Markdown content to HTML format.
    Last updated -
    1
    4,924
    3
    TypeScript
    MIT License
    • Apple
  • A
    security
    F
    license
    A
    quality
    A TypeScript template for building Model Context Protocol servers that implements basic note-taking CRUD operations with JSON responses.
    Last updated -
    5
    1
    TypeScript

View all related MCP servers

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/omer-ayhan/custom-context-mcp'

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