MCP Parse Server

MCP Parse Server

Enables interaction with Parse Server through the Model Context Protocol, providing CRUD operations, schema management, role-based security, and cloud function execution.

Category
Visit Server

README

MCP Parse Server

Servidor MCP (Model Context Protocol) completo para Parse Server con funcionalidades de CRUD, gestión de schemas, roles, ACL y Cloud Functions.

🚀 Características

📖 Lectura de Datos

  • parse_get_object - Obtener objeto por ID
  • parse_query - Consultar con filtros, ordenamiento y paginación
  • parse_count - Contar objetos con filtros
  • parse_aggregate - Queries de agregación (MongoDB pipeline)

✍️ Escritura de Datos

  • parse_create_object - Crear nuevos objetos
  • parse_update_object - Actualizar objetos existentes
  • parse_delete_object - Eliminar objetos
  • parse_batch - Operaciones batch (múltiples operaciones)
  • parse_increment_field - Incrementar campos numéricos
  • parse_add_to_array - Añadir elementos a arrays
  • parse_remove_from_array - Remover elementos de arrays

🗂️ Gestión de Schemas

  • parse_get_schemas - Listar todos los schemas
  • parse_get_schema - Obtener schema de una clase
  • parse_create_class - Crear nueva clase con schema
  • parse_update_schema - Actualizar schema de clase
  • parse_delete_class - Eliminar clase
  • parse_add_field - Añadir campo a clase
  • parse_delete_field - Eliminar campo de clase

🔐 Seguridad (Roles, Users, ACL)

  • parse_create_role - Crear rol
  • parse_get_role - Obtener rol
  • parse_list_roles - Listar roles
  • parse_update_role - Actualizar rol
  • parse_delete_role - Eliminar rol
  • parse_add_users_to_role - Añadir usuarios a rol
  • parse_remove_users_from_role - Remover usuarios de rol
  • parse_update_clp - Actualizar Class Level Permissions
  • parse_create_user - Crear usuario
  • parse_get_user - Obtener usuario
  • parse_list_users - Listar usuarios

☁️ Cloud Functions

  • parse_call_cloud_function - Llamar Cloud Function
  • parse_run_job - Ejecutar Background Job
  • parse_get_cloud_code_info - Información de Cloud Code

📦 Instalación

npm install

⚙️ Configuración

Crea un archivo .env en la raíz del proyecto:

PARSE_URL=https://tu-parse-server.com/parse
PARSE_APP_ID=tu-app-id
PARSE_REST_KEY=tu-rest-key
PARSE_MASTER_KEY=tu-master-key

# Opcional: Permite certificados autofirmados (solo desarrollo)
ALLOW_SELF_SIGNED_CERT=true
# O alternativamente:
# NODE_TLS_REJECT_UNAUTHORIZED=0

Notas importantes:

  • PARSE_MASTER_KEY es opcional pero necesario para operaciones de schema, roles y algunas operaciones administrativas.
  • ALLOW_SELF_SIGNED_CERT=true permite certificados SSL autofirmados. ⚠️ Solo usar en desarrollo local, nunca en producción.

🏃 Uso

Iniciar el servidor

npm start

Modo desarrollo (con watch)

npm run dev

📁 Estructura del Proyecto

mcp-parse-server/
├── index.mjs                 # Punto de entrada principal
├── src/
│   ├── utils/
│   │   ├── config.js         # Configuración y variables de entorno
│   │   └── parse-client.js   # Cliente HTTP para Parse REST API
│   └── tools/
│       ├── read.js           # Herramientas de lectura
│       ├── write.js          # Herramientas de escritura
│       ├── schema.js         # Herramientas de schema
│       ├── security.js       # Herramientas de roles y ACL
│       └── cloud.js          # Herramientas de Cloud Functions
├── package.json
├── .env
└── README.md

🔧 Configuración en Claude Desktop / VS Code

Añade esta configuración a tu archivo de configuración MCP:

Para Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "parse-server": {
      "command": "node",
      "args": ["/ruta/absoluta/a/mcp-parse-server/index.mjs"],
      "env": {
        "PARSE_URL": "https://tu-parse-server.com/parse",
        "PARSE_APP_ID": "tu-app-id",
        "PARSE_REST_KEY": "tu-rest-key",
        "PARSE_MASTER_KEY": "tu-master-key",
        "ALLOW_SELF_SIGNED_CERT": "true"
      }
    }
  }
}

Para VS Code:

Configura en tu settings.json del workspace o global.

📚 Ejemplos de Uso

Crear una clase con schema

{
  "className": "Product",
  "fields": {
    "name": {
      "type": "String",
      "required": true
    },
    "price": {
      "type": "Number",
      "required": true
    },
    "category": {
      "type": "Pointer",
      "targetClass": "Category"
    },
    "tags": {
      "type": "Array"
    }
  }
}

Query con filtros

{
  "className": "Product",
  "where": {
    "price": { "$gte": 10, "$lte": 100 },
    "category": {
      "__type": "Pointer",
      "className": "Category",
      "objectId": "abc123"
    }
  },
  "order": "-createdAt",
  "limit": 20,
  "include": "category"
}

Crear rol con usuarios

{
  "name": "Moderator",
  "users": ["userId1", "userId2"],
  "ACL": {
    "*": { "read": true },
    "role:Admin": { "write": true }
  }
}

Actualizar CLP

{
  "className": "Product",
  "permissions": {
    "get": { "*": true },
    "find": { "*": true },
    "create": { "requiresAuthentication": true },
    "update": { "role:Admin": true },
    "delete": { "role:Admin": true }
  }
}

🛡️ Permisos

Algunas operaciones requieren la Master Key:

  • Operaciones de schema (crear/modificar/eliminar clases)
  • Gestión de roles
  • Operaciones administrativas
  • Background Jobs
  • Queries de agregación

Asegúrate de configurar PARSE_MASTER_KEY en tu .env para estas operaciones.

📝 Licencia

MIT

🤝 Contribuciones

Las contribuciones son bienvenidas. Por favor abre un issue o pull request.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured