Skip to main content
Glama
kelvis-santos

MCP Server

refactor.ts1.98 kB
import { loadFile } from "../utils/fileLoader.js"; import { buildContext } from "../utils/contextBuilder.js"; import { callModel } from "../utils/modelApi.js"; import { REFACTOR_TEMPLATE } from "../utils/promptTemplates.js"; /** * MCP Tool: refactor * Refatora um arquivo de código conforme instruções. * Agora com logs, tratamento de erro e retorno detalhado para fins de apresentação. */ export async function run(params: { target_file: string; instructions: string; template?: string }) { console.log("[refactor] Iniciando refatoração..."); console.log("[refactor] Parâmetros recebidos:", params); try { // Carrega o conteúdo do arquivo alvo const codeContent = await loadFile(params.target_file); console.log("[refactor] Conteúdo do arquivo carregado (primeiros 200 chars):", codeContent.slice(0, 200)); // Gera o contexto a partir do código const context = buildContext(codeContent); console.log("[refactor] Contexto gerado (primeiros 200 chars):", context.slice(0, 200)); // Usa template customizado se fornecido, senão o padrão const template = params.template || REFACTOR_TEMPLATE; const prompt = template .replace("{code}", context) .replace("{instructions}", params.instructions); console.log("[refactor] Prompt final (primeiros 200 chars):", prompt.slice(0, 200)); // Chama o modelo const response = await callModel(prompt); console.log("[refactor] Resposta do modelo:", response); // Retorna informações detalhadas para apresentação return { refactored: response, context, prompt, params }; } catch (error: any) { console.error("[refactor] Erro ao refatorar o código:", error); return { error: true, message: error?.message || String(error), params }; } }

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/kelvis-santos/MCP-vscode-examples'

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