Esa MCP Server

Um servidor MCP para o serviço de compartilhamento de documentos esa.io.

Documentação

[!IMPORTANT] Um servidor MCP oficial foi lançado. Por favor, use o servidor oficial daqui em diante.

esa MCP Server

Version License Docker

Um servidor Model Context Protocol (MCP) para esa.io.

Sumário

Uso

Pré-requisitos

Antes de usar este servidor MCP, você precisa gerar um token de acesso pessoal do seu time esa.io:

  1. Vá para https://<TEAM_NAME>.esa.io/user/applications
  2. Crie um novo token de acesso pessoal
  3. Copie o token para configuração

Configuração

Você pode executar o servidor via npx ou Docker.

Usando npx

Adicione a seguinte configuração ao seu cliente MCP:

{
  "mcpServers": {
    "esa": {
      "command": "npx",
      "args": [
        "-y",
        "@koki-develop/esa-mcp-server@latest"
      ],
      "env": {
        "ESA_TEAM": "<your-team-name>",
        "ESA_ACCESS_TOKEN": "<your-personal-access-token>"
      }
    }
  }
}

Substitua <your-team-name> e <your-personal-access-token> pelo nome do seu time e token de acesso pessoal.

Usando Docker

Se você preferir Docker, use a seguinte configuração:

{
  "mcpServers": {
    "esa": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ESA_TEAM",
        "-e",
        "ESA_ACCESS_TOKEN",
        "ghcr.io/koki-develop/esa-mcp-server:latest"
      ],
      "env": {
        "ESA_TEAM": "<your-team-name>",
        "ESA_ACCESS_TOKEN": "<your-personal-access-token>"
      }
    }
  }
}

Modo somente leitura

Para habilitar o modo somente leitura que permite apenas operações de leitura, adicione a flag --readonly.

Usando npx:

{
  "mcpServers": {
    "esa": {
      "command": "npx",
      "args": [
        "-y",
        "@koki-develop/esa-mcp-server@latest",
        "--readonly"
      ],
      "env": {
        "ESA_TEAM": "<your-team-name>",
        "ESA_ACCESS_TOKEN": "<your-personal-access-token>"
      }
    }
  }
}

Usando Docker:

{
  "mcpServers": {
    "esa": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ESA_TEAM",
        "-e",
        "ESA_ACCESS_TOKEN",
        "ghcr.io/koki-develop/esa-mcp-server:latest",
        "--readonly"
      ],
      "env": {
        "ESA_TEAM": "<your-team-name>",
        "ESA_ACCESS_TOKEN": "<your-personal-access-token>"
      }
    }
  }
}

No modo somente leitura, apenas as seguintes operações estão disponíveis:

  • get_posts - recuperar posts
  • get_post - recuperar um post específico
  • get_tags - recuperar tags
  • get_post_comments - recuperar comentários de posts

Operações de escrita (create_post, update_post, delete_post, create_post_comment, update_comment, delete_comment) estão desabilitadas.

Ferramentas MCP

Posts

FerramentaDescrição
get_postsRecupera uma lista de posts do time esa. Suporta consultas de busca, filtragem, ordenação e paginação. Retorna metadados do post incluindo título, conteúdo, tags, categorias, informações do autor e métricas de engajamento (comentários, estrelas, observações). Opcionalmente inclui comentários e stargazers com o parâmetro include. Suporta inclusão aninhada como 'comments,comments.stargazers'. Nota: O conteúdo do post (body_md) é truncado para 300 caracteres com um campo body_truncated indicando se a truncagem ocorreu para reduzir o tamanho do contexto.
get_postRecupera um post específico do time esa pelo número do post. Retorna detalhes completos do post incluindo título, conteúdo (markdown), tags, categoria, informações do autor, histórico de revisões e métricas de engajamento. Opcionalmente inclui comentários e stargazers. Suporta inclusão aninhada como 'comments,comments.stargazers'.
create_postCria um novo post no time esa. Requer um título e opcionalmente aceita conteúdo, tags, categoria, status WIP e outros metadados. Retorna as informações do post criado incluindo o número do post atribuído e a URL.
update_postAtualiza um post existente no time esa. Requer um número de post e opcionalmente aceita conteúdo atualizado, tags, categoria, status WIP e outros metadados. Retorna as informações do post atualizado incluindo detalhes da revisão.
delete_postExclui um post existente do time esa. Requer um número de post. O post será excluído permanentemente e não poderá ser recuperado. Retorna uma mensagem de confirmação após a exclusão bem-sucedida.

Tags

FerramentaDescrição
get_tagsObtém uma lista de todas as tags usadas no time esa. Retorna tags com seus nomes e o número de posts aos quais estão anexadas, ordenados pela contagem de posts em ordem decrescente. Suporta paginação.

Comentários

FerramentaDescrição
get_post_commentsRecupera uma lista de comentários para um post específico do time esa. Requer um número de post e suporta paginação. Retorna metadados do comentário incluindo conteúdo, informações do autor, carimbos de data/hora e métricas de engajamento (estrelas).
create_post_commentCria um novo comentário em um post existente no time esa. Requer um número de post e conteúdo do comentário em formato Markdown. Retorna as informações do comentário criado incluindo ID, conteúdo, carimbos de data/hora e detalhes do autor.
update_commentAtualiza um comentário existente em um post no time esa. Requer um ID de comentário e novo conteúdo em formato Markdown. Retorna as informações do comentário atualizado incluindo conteúdo, carimbos de data/hora e detalhes do autor.
delete_commentExclui um comentário existente do time esa. Requer um ID de comentário. O comentário será excluído permanentemente e não poderá ser recuperado. Retorna uma mensagem de confirmação após a exclusão bem-sucedida.

Licença

Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.

Copyright (c) 2025 Koki Sato