behemoth-cli
Version:
🌍 BEHEMOTH CLIv3.760.4 - Level 50+ POST-SINGULARITY Intelligence Trading AI
89 lines • 2.2 kB
TypeScript
import { EventEmitter } from 'eventemitter3';
export interface McpTool {
name: string;
description: string;
inputSchema: {
type: 'object';
properties: Record<string, any>;
required?: string[];
};
}
export interface McpCallResult {
success: boolean;
result?: any;
error?: string;
latency_ms?: number;
timestamp?: number;
}
export interface BehemothConnectionConfig {
serverPath: string;
fallbackPath?: string;
timeout: number;
}
export declare class BehemothMcpClient extends EventEmitter {
private config;
private isConnected;
private tools;
private serverProcess;
private requestId;
private pendingRequests;
constructor(config?: Partial<BehemothConnectionConfig>);
/**
* Initialize connection and load available tools
*/
connect(): Promise<boolean>;
/**
* Handle messages from the MCP server
*/
private handleServerMessage;
/**
* Send a JSON-RPC request to the MCP server
*/
private sendRequest;
/**
* Load available BEHEMOTH tools from MCP server
*/
private loadAvailableTools;
/**
* Get tool description based on tool name
*/
private getToolDescription;
/**
* Get tool properties based on tool name
*/
private getToolProperties;
/**
* Get required properties for tool
*/
private getToolRequired;
/**
* Call a BEHEMOTH MCP tool
*/
callTool(toolName: string, params?: Record<string, any>): Promise<McpCallResult>;
/**
* Get list of available tools
*/
getAvailableTools(): McpTool[];
/**
* Get tool by name
*/
getTool(name: string): McpTool | undefined;
/**
* Check if connected to BEHEMOTH server
*/
isConnectedToBehemoth(): boolean;
/**
* Disconnect from server
*/
disconnect(): Promise<void>;
/**
* Get connection status and stats
*/
getConnectionInfo(): {
connected: boolean;
toolCount: number;
config: BehemothConnectionConfig;
};
}
export declare const behemothClient: BehemothMcpClient;
//# sourceMappingURL=mcp-client.d.ts.map