Skip to main content
Glama
context.ts1.91 kB
import { z } from "zod"; /** * Context Tools - Manage LLM context window and information aggregation */ // ============================================ // Summarize Files // ============================================ export const summarizeFilesSchema = { name: "summarize_files", description: "Generates a high-level summary of multiple files to save context window", inputSchema: z.object({ files: z.array(z.string()).describe("List of file paths"), detailLevel: z.enum(["brief", "standard", "detailed"]).default("standard") }) }; export function summarizeFilesHandler(args: { files: string[]; detailLevel: string }) { // In a real agent, the LLM would read and summarize. // Here we provide the structure for that action. return { content: [{ type: "text", text: `Please summarize the following ${args.files.length} files at ${args.detailLevel} level:\n${args.files.map(f => `- ${f}`).join('\n')}` }] }; } // ============================================ // Aggregate Context // ============================================ export const aggregateContextSchema = { name: "aggregate_context", description: "Collects relevant files, definitions, and patterns for a specific task", inputSchema: z.object({ task: z.string().describe("Task description"), includePatterns: z.array(z.string()).optional(), excludePatterns: z.array(z.string()).optional() }) }; export function aggregateContextHandler(args: { task: string }) { return { content: [{ type: "text", text: `# Aggregated Context for: "${args.task}"\n\n[System would auto-gather related files here based on embeddings/search]` }] }; } export const contextTools = { summarizeFilesSchema, summarizeFilesHandler, aggregateContextSchema, aggregateContextHandler };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/millsydotdev/Code-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server