stdout-mcp-server

Captura e gerencia logs de stdout de múltiplos processos através de um sistema de pipe nomeado para depuração e análise em tempo real.

Documentação

stdout-mcp-server

Um servidor Model Context Protocol (MCP) que captura e gerencia logs de stdout por meio de um sistema de pipe nomeado. Este servidor é particularmente útil para:

  • Capturar logs de múltiplos processos ou aplicações e disponibilizá-los para depuração no Cursor IDE.
  • Monitorar a saída de aplicações em tempo real e fornecer uma interface MCP para consultar, filtrar e analisar logs

Como Funciona

  1. O servidor cria um pipe nomeado em um local específico (/tmp/stdout_pipe no Unix/MacOS ou \\.\pipe\stdout_pipe no Windows)

  2. Qualquer aplicação pode escrever logs neste pipe usando redirecionamento padrão de saída. Por exemplo:

your_application | tee /tmp/stdout_pipe # or
your_application > /tmp/stdout_pipe
  1. O servidor monitora o pipe, captura todos os logs recebidos e mantém um histórico das últimas 100 entradas

  2. Por meio das ferramentas MCP, você pode consultar, filtrar e analisar esses logs

Requisitos do Sistema

Antes de instalar, certifique-se de ter:

  • Node.js v18 ou mais recente

Opções de Instalação

Opção 1: Instalação no Cursor

  1. Abra o Cursor e navegue até Cursor > Settings > MCP Servers
  2. Clique em "Add new MCP Server"
  3. Atualize seu arquivo de configurações MCP com a seguinte configuração:
name: stdout-mcp-server
type: command
command: npx stdout-mcp-server

Opção 2: Instalação em outros clientes MCP

Instalação em outros clientes MCP

Para macOS/Linux:

{
  "mcpServers": {
    "stdio-mcp-server": {
      "command": "npx",
      "args": [
        "stdio-mcp-server"
      ]
    }
  }
}

Para Windows:

{
  "mcpServers": {
    "mcp-installer": {
      "command": "cmd.exe",
      "args": ["/c", "npx", "stdio-mcp-server"]
    }
  }
}

Exemplos de Uso

Redirecionando Logs de Aplicações

Para enviar a saída da sua aplicação para o pipe:

# Unix/MacOS
your_application > /tmp/stdout_pipe

# Windows (PowerShell)
your_application > \\.\pipe\stdout_pipe

Monitorando Múltiplas Aplicações

Você pode redirecionar logs de múltiplas fontes:

# Application 1
app1 > /tmp/stdout_pipe &

# Application 2
app2 > /tmp/stdout_pipe &

Consultando Logs

Sua IA usará a ferramenta get-logs no seu cliente MCP para recuperar e filtrar logs:

// Get last 50 logs
get-logs()

// Get last 100 logs containing "error"
get-logs({ lines: 100, filter: "error" })

// Get logs since a specific timestamp
get-logs({ since: 1648675200000 }) // Unix timestamp in milliseconds

Recursos

  • Criação e monitoramento de pipe nomeado
  • Captura e armazenamento de logs em tempo real
  • Filtragem e recuperação de logs por meio de ferramentas MCP
  • Histórico de logs configurável (padrão: 100 entradas)
  • Suporte multiplataforma (Windows e sistemas baseados em Unix)

Locais do Pipe Nomeado

  • Windows: \\.\pipe\stdout_pipe
  • Unix/MacOS: /tmp/stdout_pipe

Ferramentas Disponíveis

get-logs

Recupera logs do pipe nomeado com filtragem opcional:

Parâmetros:

  • lines (opcional, padrão: 50): Número de linhas de log a retornar
  • filter (opcional): Texto para filtrar os logs
  • since (opcional): Timestamp para obter logs posteriores

Exemplos de respostas:

// Response format
{
  content: [{
    type: "text",
    text: "[2024-03-20T10:15:30.123Z] Application started\n[2024-03-20T10:15:31.456Z] Connected to database"
  }]
}

Licença

Licença MIT