80 lines
3.3 KiB
JavaScript
80 lines
3.3 KiB
JavaScript
/**
|
|
* MCP Tools Export
|
|
*
|
|
* This module exports all MCP tool classes and provides
|
|
* a consolidated tool list for the MCP server
|
|
*/
|
|
// Import all tool classes
|
|
import { SolverTools } from './solver.js';
|
|
import { MatrixTools } from './matrix.js';
|
|
import { EmergenceTools } from './emergence-tools.js';
|
|
import { ConsciousnessTools } from './consciousness.js';
|
|
import { SchedulerTools } from './scheduler.js';
|
|
import { PsychoSymbolicTools } from './psycho-symbolic.js';
|
|
import { WasmSublinearSolverTools } from './wasm-sublinear-solver.js';
|
|
import { temporalAttractorTools } from './temporal-attractor.js';
|
|
import { temporalAttractorHandlers } from './temporal-attractor-handlers.js';
|
|
// Export classes for direct usage
|
|
export { SolverTools } from './solver.js';
|
|
export { MatrixTools } from './matrix.js';
|
|
export { EmergenceTools } from './emergence-tools.js';
|
|
export { ConsciousnessTools } from './consciousness.js';
|
|
export { SchedulerTools } from './scheduler.js';
|
|
export { PsychoSymbolicTools } from './psycho-symbolic.js';
|
|
export { WasmSublinearSolverTools } from './wasm-sublinear-solver.js';
|
|
export { temporalAttractorHandlers } from './temporal-attractor-handlers.js';
|
|
// Create instances for getting tool definitions
|
|
const solverToolsInstance = new SolverTools();
|
|
const matrixToolsInstance = new MatrixTools();
|
|
const emergenceToolsInstance = new EmergenceTools();
|
|
const consciousnessToolsInstance = new ConsciousnessTools();
|
|
const schedulerToolsInstance = new SchedulerTools();
|
|
const psychoSymbolicToolsInstance = new PsychoSymbolicTools();
|
|
const wasmSolverToolsInstance = new WasmSublinearSolverTools();
|
|
// Export tool arrays (if classes have getTools method, otherwise empty)
|
|
export const solverTools = solverToolsInstance.getTools?.() || [];
|
|
export const matrixTools = matrixToolsInstance.getTools?.() || [];
|
|
export const emergenceTools = emergenceToolsInstance.getTools?.() || [];
|
|
export const consciousnessTools = consciousnessToolsInstance.getTools?.() || [];
|
|
export const schedulerTools = schedulerToolsInstance.getTools?.() || [];
|
|
export const psychoSymbolicTools = psychoSymbolicToolsInstance.getTools?.() || [];
|
|
// Temporal attractor tools are exported directly from the file
|
|
export { temporalAttractorTools } from './temporal-attractor.js';
|
|
// For backward compatibility - if getTools doesn't exist,
|
|
// we'll assume the tools are defined in the MCP server itself
|
|
export const allTools = [
|
|
...solverTools,
|
|
...matrixTools,
|
|
...emergenceTools,
|
|
...consciousnessTools,
|
|
...schedulerTools,
|
|
...psychoSymbolicTools,
|
|
...temporalAttractorTools
|
|
];
|
|
// Default export with both instances and classes
|
|
export default {
|
|
// Instances (for calling methods)
|
|
solver: solverToolsInstance,
|
|
matrix: matrixToolsInstance,
|
|
emergence: emergenceToolsInstance,
|
|
consciousness: consciousnessToolsInstance,
|
|
scheduler: schedulerToolsInstance,
|
|
psychoSymbolic: psychoSymbolicToolsInstance,
|
|
temporalAttractor: temporalAttractorHandlers,
|
|
// Classes (for creating new instances)
|
|
SolverTools,
|
|
MatrixTools,
|
|
EmergenceTools,
|
|
ConsciousnessTools,
|
|
SchedulerTools,
|
|
PsychoSymbolicTools,
|
|
// Tool arrays (may be empty if getTools doesn't exist)
|
|
solverTools,
|
|
matrixTools,
|
|
emergenceTools,
|
|
consciousnessTools,
|
|
schedulerTools,
|
|
psychoSymbolicTools,
|
|
allTools
|
|
};
|