Files
agenticSystem/mcp-server/tools/tables/index.js
Jordan Diaz 5198afedaa feat: rol auditor (solo lectura total) en el MCP + agente soporte
- roleCheck.js: isAuditor()/canEditContent(); canEditCode() tambien
  excluye auditor. Superficie editor/developer intacta (verificado
  contra el codigo pre-cambio en el test).
- records/tables/media/languages: tools de escritura gateadas con
  canEditContent(), orden de registro original preservado.
- agents/soporte: agente de evaluacion de incidencias en produccion,
  allowed_tools allowlist namespaceada (23 acai_code + 18 playwright,
  cero fetch), system.md con formato de informe obligatorio y trato
  del texto del cliente como dato no confiable.
- test/auditor-role.test.js: 22 tests de superficie exacta por rol.
2026-08-21 18:05:47 +00:00

31 lines
1.4 KiB
JavaScript

import { registerListTablesTool } from './list.js';
import { registerGetTableSchemaTool } from './schema.js';
import { registerCreateTableTool } from './create.js';
import { registerUpdateTableMetadataTool } from './updateMetadata.js';
import { registerDeleteTableTool } from './delete.js';
import { registerReorderTablesTool } from './reorderTables.js';
import { registerCreateFieldTool } from './createField.js';
import { registerUpdateFieldTool } from './updateField.js';
import { registerDeleteFieldTool } from './deleteField.js';
import { registerReorderFieldsTool } from './reorderFields.js';
import { registerRegenerateEnlacesTool } from './regenerateEnlaces.js';
import { canEditContent } from '../helpers/roleCheck.js';
export function registerTableTools(server) {
// Lectura de estructura: siempre disponible (incluido el rol auditor).
registerListTablesTool(server);
registerGetTableSchemaTool(server);
// Escritura de estructura: developer y editor si, auditor no.
if (canEditContent()) {
registerCreateTableTool(server);
registerUpdateTableMetadataTool(server);
registerDeleteTableTool(server);
registerReorderTablesTool(server);
registerCreateFieldTool(server);
registerUpdateFieldTool(server);
registerDeleteFieldTool(server);
registerReorderFieldsTool(server);
registerRegenerateEnlacesTool(server);
}
}