@asanstefanski/everhour-mcp-server
Version:
Complete Everhour API integration for Model Context Protocol (MCP) with 100% endpoint coverage
50 lines • 1.46 kB
TypeScript
import { MCPToolDefinition, ReadonlyConfig } from '../types/everhour.js';
/**
* Readonly mode configuration and validation utilities
*/
export declare class ReadonlyMode {
private config;
constructor();
/**
* Check if readonly mode is enabled via environment variable
*/
private isReadonlyModeEnabled;
/**
* Get current readonly configuration
*/
getConfig(): ReadonlyConfig;
/**
* Check if a tool is allowed to execute in current mode
*/
isToolAllowed(tool: MCPToolDefinition): boolean;
/**
* Get blocked tools in current mode
*/
getBlockedTools(allTools: Record<string, MCPToolDefinition>): string[];
/**
* Get allowed tools in current mode
*/
getAllowedTools(allTools: Record<string, MCPToolDefinition>): string[];
/**
* Create error message for blocked tool
*/
createBlockedToolError(toolName: string, tool: MCPToolDefinition): string;
/**
* Get status summary for logging/display
*/
getStatusSummary(allTools: Record<string, MCPToolDefinition>): {
mode: 'readonly' | 'full';
allowedTools: number;
blockedTools: number;
totalTools: number;
};
/**
* Log readonly mode status
*/
logStatus(allTools: Record<string, MCPToolDefinition>): void;
}
/**
* Global readonly mode instance
*/
export declare const readonlyMode: ReadonlyMode;
//# sourceMappingURL=readonly.d.ts.map