Skip to main content
Glama

task_logs

Retrieve and filter system logs from the MCP SFTP Orchestrator server to monitor task execution, troubleshoot issues, and track activity history.

Instructions

Affiche les logs du système MCP.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
levelNoFiltrer par niveau de log.
searchNoRechercher dans les messages.
limitNoNombre de logs à afficher.

Implementation Reference

  • server.js:683-701 (registration)
    Registration of the 'task_logs' MCP tool, including inline schema and handler function.
    server.registerTool( "task_logs", { title: "Consulter les logs système", description: "Affiche les logs du système MCP.", inputSchema: z.object({ level: z.enum(['error', 'warn', 'info', 'debug']).optional().describe("Filtrer par niveau de log."), search: z.string().optional().describe("Rechercher dans les messages."), limit: z.number().optional().default(50).describe("Nombre de logs à afficher.") }) }, async (params) => { const logs = queue.getLogs({ level: params.level, search: params.search }).slice(-params.limit); return { content: [{ type: "text", text: JSON.stringify(logs, null, 2) }] }; } );
  • The MCP tool handler that invokes queue.getLogs with filters and returns formatted logs.
    async (params) => { const logs = queue.getLogs({ level: params.level, search: params.search }).slice(-params.limit); return { content: [{ type: "text", text: JSON.stringify(logs, null, 2) }] }; }
  • Zod input schema defining optional parameters for log level, search term, and limit.
    inputSchema: z.object({ level: z.enum(['error', 'warn', 'info', 'debug']).optional().describe("Filtrer par niveau de log."), search: z.string().optional().describe("Rechercher dans les messages."), limit: z.number().optional().default(50).describe("Nombre de logs à afficher.") })
  • Core helper function getLogs that filters the global logHistory array based on level, search, or since parameters.
    function getLogs(filter = {}) { if (!filter || Object.keys(filter).length === 0) { return logHistory; } return logHistory.filter(log => { if (filter.level && log.level !== filter.level) return false; if (filter.since && new Date(log.timestamp) < new Date(filter.since)) return false; if (filter.search && !log.message.toLowerCase().includes(filter.search.toLowerCase())) return false; return true; }); }
  • Supporting log function that appends entries to the shared logHistory array, which is used by getLogs.
    function log(level, message) { const logEntry = { level, message, timestamp: new Date().toISOString() }; logHistory.push(logEntry); if (logHistory.length > MAX_LOGS) { logHistory.shift(); } // ✅ N'afficher les logs que si MCP_DEBUG=true if (!SILENT_MODE && ['error', 'warn', 'info'].includes(level)) { const prefix = { error: '[❌ ERROR]', warn: '[⚠️ WARN]', info: '[ℹ️ INFO]', debug: '[🔧 DEBUG]' }[level] || `[${level.toUpperCase()}]`; // ✅ TOUJOURS utiliser stderr (pas stdout) console.error(`${prefix} ${new Date().toISOString().split('T')[1].split('.')[0]} - ${message}`); } }

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/fkom13/mcp-sftp-orchestrator'

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