agent-orchestration-mcp-server
Version:
MCP server that converts natural language queries to orchestration cards for GAFF
80 lines • 2.08 kB
TypeScript
/**
* GAFF Configuration Utilities
*
* Load and manage gaff.json configuration
*
* Author: Sean Poyner <sean.poyner@pm.me>
*/
export interface GaffAgent {
type: string;
description: string;
capabilities: string[];
endpoint?: string;
authentication?: string;
timeout_ms?: number;
retry_policy?: {
max_attempts?: number;
backoff_strategy?: string;
};
input_schema: Record<string, any>;
output_schema: Record<string, any>;
model?: string;
temperature?: number;
}
export interface GaffConfig {
version: string;
name: string;
description?: string;
primary_agent?: any;
agents: Record<string, GaffAgent>;
models?: Record<string, any>;
protocols?: any;
schemas?: Record<string, string>;
context?: any;
constraints?: any;
quality_assurance?: any;
safety_protocols?: any;
instructions?: any;
metadata?: any;
}
/**
* Load gaff.json from file or provided object
*/
export declare function loadGaffConfig(configOrPath?: any): GaffConfig;
/**
* Get list of agents with optional filters
*/
export declare function listAgents(config: GaffConfig, filters?: {
capabilities?: string[];
type?: string;
}): Array<{
name: string;
agent: GaffAgent;
}>;
/**
* Get specific agent by name
*/
export declare function getAgent(config: GaffConfig, agentName: string): GaffAgent | null;
/**
* Find agents by capability
*/
export declare function findAgentsByCapability(config: GaffConfig, capability: string): Array<{
name: string;
agent: GaffAgent;
}>;
/**
* Validate that required agents exist
*/
export declare function validateAgentsExist(config: GaffConfig, requiredAgents: string[]): {
valid: boolean;
missing: string[];
};
/**
* Get agent types distribution
*/
export declare function getAgentTypeDistribution(config: GaffConfig): Record<string, number>;
/**
* Get all unique capabilities across all agents
*/
export declare function getAllCapabilities(config: GaffConfig): string[];
//# sourceMappingURL=gaff-config.d.ts.map