Skip to main content
Glama

nocobase-mcp-server

Un servidor MCP (Model Context Protocol) para NocoBase, que permite a asistentes de IA como Claude interactuar con tu instancia de NocoBase: leer colecciones, gestionar esquemas de interfaz de usuario, crear bloques flowPage y ejecutar operaciones de API dinámicas a través de OpenAPI.

Características

  • 24 herramientas creadas manualmente que cubren colecciones, esquemas de interfaz de usuario, rutas de escritorio, modelos de flujo y bloques JS

  • Herramientas dinámicas generadas automáticamente a partir de la especificación OpenAPI/Swagger de tu NocoBase (requiere el plugin de documentación de API)

  • Funciona con NocoBase v2.x (probado en 2.0.17-full)

Requisitos

  • Node.js 18+

  • Una instancia de NocoBase en ejecución

  • Un token de API de NocoBase (root o con permisos suficientes)

Instalación

1. Clonar e instalar dependencias

git clone https://github.com/your-username/nocobase-mcp-server.git
cd nocobase-mcp-server
pnpm install

2. Configurar Claude Code (o cualquier cliente MCP)

Añadir a ~/.claude/mcp.json (configuración global de MCP de Claude Code):

{
  "mcpServers": {
    "nocobase": {
      "type": "stdio",
      "command": "/absolute/path/to/nocobase-mcp-server/node_modules/.bin/tsx",
      "args": ["/absolute/path/to/nocobase-mcp-server/src/index.ts"],
      "env": {
        "NOCOBASE_URL": "http://localhost:13000",
        "NOCOBASE_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

Reemplaza /absolute/path/to/nocobase-mcp-server con la ruta real donde clonaste el repositorio (por ejemplo, /Users/tu-nombre/Projects/nocobase-mcp-server).

Variables de entorno

Variable

Requerido

Predeterminado

Descripción

NOCOBASE_API_TOKEN

Token de API de NocoBase

NOCOBASE_URL

No

http://localhost:13000

URL base de la instancia de NocoBase

Obtención de un token de API

  1. En la interfaz de usuario de NocoBase: Configuración → Plugins → activa el plugin API keys

  2. Ve a Configuración → API keys → Añadir API key

  3. Copia el token generado

Habilitación de herramientas dinámicas (opcional)

Activa el plugin API documentation en NocoBase (Configuración → Plugins). Una vez activo, el servidor cargará automáticamente todos los endpoints de API adicionales como herramientas al iniciarse.

Referencia de herramientas

Colecciones

Herramienta

Descripción

list_collections

Listar todas las colecciones

get_collection

Obtener una colección por nombre

Esquemas de interfaz de usuario (Páginas clásicas)

Herramienta

Descripción

list_pages

Listar todos los nodos de esquema de interfaz de usuario

get_page

Obtener el árbol completo de esquemas de interfaz de usuario anidados por UID

get_page_properties

Obtener las propiedades hijas directas de un nodo de esquema de interfaz de usuario

get_parent_schema

Obtener el esquema padre de un nodo

create_page

Crear un nuevo nodo de esquema de interfaz de usuario de nivel raíz

insert_new_schema

Crear e insertar un nuevo nodo de esquema de interfaz de usuario

insert_adjacent_schema

Insertar un nodo de esquema relativo a un nodo objetivo

update_ui_schema

Parchear un nodo de esquema de interfaz de usuario existente

batch_patch_ui_schema

Parchear múltiples nodos de esquema de interfaz de usuario en una sola solicitud

remove_ui_schema

Eliminar un nodo de esquema de interfaz de usuario y sus descendientes ⚠️

save_as_template

Guardar un nodo de esquema de interfaz de usuario como una plantilla de bloque reutilizable

Rutas de escritorio / Navegación

Herramienta

Descripción

list_desktop_routes

Listar todas las rutas de escritorio (páginas, menús, grupos, pestañas)

Modelos de flujo (bloques flowPage)

Herramienta

Descripción

get_flow_model

Obtener un bloque flowPage por UID

get_flow_model_by_parent

Obtener un bloque flowPage por ID padre y subKey

save_flow_model

Crear o actualizar un bloque flowPage

attach_flow_model

Adjuntar un bloque a un contenedor flowPage

move_flow_model

Mover un bloque a una posición diferente

duplicate_flow_model

Copiar profundamente un bloque y adjuntarlo automáticamente

destroy_flow_model

Eliminar un bloque y sus hijos ⚠️

Bloques JS

Herramienta

Descripción

get_js_block

Obtener un esquema de bloque JS (página clásica)

update_js_block

Actualizar código de bloque JS (página clásica)

update_flow_js_block

Actualizar código de bloque JS dentro de una flowPage — usa ctx.render() o JSX a través de ctx.libs.React

⚠️ Las operaciones destructivas no se pueden deshacer.

Sandbox de bloques JS

Los bloques JS de flowPage se ejecutan en el sandbox de NocoBase. APIs disponibles:

// Render HTML
ctx.render(`<h1>Hello</h1>`);

// Render JSX with React + Ant Design
const { React, antd } = ctx.libs;
const { useState } = React;
const { Table, Tag } = antd;

function MyComponent() {
  const [tab, setTab] = useState('a');
  return <div>...</div>;
}

ctx.render(<MyComponent />);

Contribución

¡Las contribuciones son bienvenidas! Para añadir una nueva herramienta:

  1. Haz un fork del repositorio y crea una rama de funcionalidad

  2. Añade tu herramienta en src/index.ts usando server.registerTool()

  3. Sigue el patrón existente: usa nocoFetch() para llamadas a la API y ok() para formatear las respuestas

  4. Actualiza la lista de herramientas en README.md

  5. Abre una solicitud de extracción (pull request)

Para informes de errores o solicitudes de funciones, abre un issue en GitHub.

Licencia

MIT — consulta LICENSE para más detalles.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - A tier

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/puguhsudarma/nocobase-mcp-server'

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