tryaii-mcp-server
Version:
TryAII MCP Server - 15+ AI models with comparison, cost tracking, and collective intelligence
162 lines • 3.82 kB
TypeScript
export interface ChatMessage {
role: 'user' | 'assistant' | 'system';
content: string;
}
export interface ChatRequest {
modelId: string;
message: string;
enableWebSearch?: boolean;
temperature?: number;
maxTokens?: number;
conversationHistory?: ChatMessage[];
}
export interface ChatResponse {
model: string;
modelName: string;
provider: string;
response: string;
usage: {
inputTokens: number;
outputTokens: number;
totalTokens: number;
};
cost: string | null;
webSearchEnabled: boolean;
webSearchResults?: string[];
}
export interface CompareRequest {
modelIds: string[];
message: string;
enableWebSearch?: boolean;
temperature?: number;
maxTokens?: number;
}
export interface CompareResponse {
message: string;
comparisons: Array<{
model: string;
modelName: string;
provider: string;
response: string;
usage: {
inputTokens: number;
outputTokens: number;
totalTokens: number;
};
cost: string | null;
success: boolean;
error?: string;
}>;
totalCost: string;
timestamp: string;
}
export interface BrainsRequest {
question: string;
enableWebSearch?: boolean;
temperature?: number;
maxTokens?: number;
}
export interface BrainsResponse {
type: string;
file: {
filename: string;
filepath: string | null;
url: string | null;
localPath?: string;
dataUrl?: string;
error?: string;
};
summary: {
question: string;
modelsQueried: number;
successfulResponses: number;
totalCost: string;
totalTokens: number;
timestamp: string;
};
responses: Array<{
model: {
id: string;
name: string;
provider: string;
};
status: 'success' | 'error';
response?: string;
error?: string;
tokensUsed: number;
cost: number;
webSearchResults?: string[] | null;
reasoning?: string | null;
}>;
message: string;
instructions: string;
}
export interface ModelInfo {
id: string;
name: string;
provider: string;
capabilities: string[];
pricing: {
inputCostPer1kTokens: number;
outputCostPer1kTokens: number;
};
features: {
webSearch: boolean;
reasoning: boolean;
maxContextTokens: number;
latencySpeed: string;
};
description: string;
}
export interface ModelsResponse {
totalModels: number;
availableProviders: string[];
models: ModelInfo[];
}
export interface ApiResponse<T> {
success: boolean;
data?: T;
error?: {
code: string;
message: string;
details?: any;
};
metadata: {
requestId: string;
sessionId?: string;
cost?: number;
balanceAfter?: number;
timestamp: string;
processingTime: number;
};
}
export interface HealthResponse {
status: 'healthy' | 'unhealthy';
timestamp: string;
uptime: number;
version: string;
services: {
mcpClient: {
status: 'connected' | 'disconnected' | 'error';
lastCheck: string;
};
sessionManager: {
status: 'running' | 'stopped';
activeSessions: number;
};
database: {
status: 'connected' | 'disconnected' | 'error';
lastCheck: string;
responseTime?: number;
};
};
}
export interface RequestContext {
requestId: string;
sessionId: string;
userId: string;
apiKeyId: string;
permissions: string[];
startTime: number;
}
//# sourceMappingURL=api.d.ts.map