mcp-adr-analysis-server
Version:
MCP server for analyzing Architectural Decision Records and project architecture
99 lines • 2.91 kB
TypeScript
/**
* Conversation Context Types
*
* Defines the structure for passing conversation context from calling LLMs
* to the MCP server for context-aware analysis.
*/
export interface ConversationContext {
/** Original human request text for context restoration */
humanRequest?: string;
/** User's primary objectives from the conversation */
userGoals?: string[];
/** Specific areas of concern or interest */
focusAreas?: string[];
/** Limitations, compliance requirements, or restrictions */
constraints?: string[];
/** Relevant context from previous conversation */
previousContext?: string;
/** Current project phase or stage */
projectPhase?: 'planning' | 'development' | 'migration' | 'production' | 'maintenance' | string;
/** User's role or expertise level */
userRole?: 'architect' | 'developer' | 'manager' | 'ops' | 'security' | string;
/** Specific requirements or preferences mentioned */
requirements?: string[];
/** Timeline or urgency information */
timeline?: string;
/** Budget or resource constraints */
budget?: string;
}
/**
* JSON Schema for conversation context - reusable across tools
*/
export declare const CONVERSATION_CONTEXT_SCHEMA: {
type: "object";
description: string;
properties: {
humanRequest: {
type: "string";
description: string;
};
userGoals: {
type: "array";
items: {
type: "string";
};
description: string;
};
focusAreas: {
type: "array";
items: {
type: "string";
};
description: string;
};
constraints: {
type: "array";
items: {
type: "string";
};
description: string;
};
previousContext: {
type: "string";
description: string;
};
projectPhase: {
type: "string";
description: string;
};
userRole: {
type: "string";
description: string;
};
requirements: {
type: "array";
items: {
type: "string";
};
description: string;
};
timeline: {
type: "string";
description: string;
};
budget: {
type: "string";
description: string;
};
};
additionalProperties: boolean;
};
/**
* Utility function to extract context summary for prompts
*/
export declare function formatContextForPrompt(context?: ConversationContext): string;
/**
* Check if context contains meaningful information
*/
export declare function hasMeaningfulContext(context?: ConversationContext): boolean;
//# sourceMappingURL=conversation-context.d.ts.map