Esa MCP Server

Official Model Context Protocol (MCP) server for esa.io - STDIO transport version.

Local serverstdio

What is the Esa MCP server?

Official Model Context Protocol (MCP) server for esa.io - STDIO transport version. Exposed over MCP by the esa mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.

What it actually does

esa.io の公式 MCP(Model Context Protocol)サーバー(STDIO Transport 版)

Its toolset

Everything the assistant can do here goes through one of these:

  • esa_get_teams — 所属している esa チームの一覧
  • esa_get_team_stats — チームの統計情報(メンバー数、記事数、コメント数など)
  • esa_get_team_tags — チーム内で使われているタグと使用回数
  • esa_get_team_members — チームメンバーとその役割・プロフィール
  • esa_search_posts — 記事を検索
  • esa_get_post — 記事 ID から記事を取得(バックリンク総数 backlinks_count、本文の文字数・行数 body_md_stats を含む)
  • esa_get_post_backlinks — 指定記事を参照している記事の一覧(ページング対応)
  • esa_create_post — 新しい記事を作成(タグ、カテゴリー、WIP ステータス付き)
  • esa_update_post — 記事を更新(タイトル、本文、タグ、カテゴリー、WIP ステータス)
  • esa_append_post — 記事本文の末尾に追記(既存本文を取得せずに追記でき、新しいリビジョンとして保存)
  • esa_prepend_post — 記事本文の先頭に追記(既存本文を取得せずに追記でき、新しいリビジョンとして保存)
  • esa_archive_post — 記事をアーカイブ(Archived/ カテゴリーへ移動)

Adding it to your client

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.

Configuration

You will need 2 environment variables: ESA_ACCESS_TOKEN, LANG. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

When to reach for it

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Esa's toolset — esa_get_teams, esa_get_team_stats, esa_get_team_tags and 11 more — is a fair guide to whether it matches your workflow.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Caveats

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Esa.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the esa mcp server does with a few real requests.

Available tools

ToolWhat it does
esa_get_teams所属している esa チームの一覧
esa_get_team_statsチームの統計情報(メンバー数、記事数、コメント数など)
esa_get_team_tagsチーム内で使われているタグと使用回数
esa_get_team_membersチームメンバーとその役割・プロフィール
esa_search_posts記事を検索
esa_get_post記事 ID から記事を取得(バックリンク総数 backlinks_count、本文の文字数・行数 body_md_stats を含む)
esa_get_post_backlinks指定記事を参照している記事の一覧(ページング対応)
esa_create_post新しい記事を作成(タグ、カテゴリー、WIP ステータス付き)
esa_update_post記事を更新(タイトル、本文、タグ、カテゴリー、WIP ステータス)
esa_append_post記事本文の末尾に追記(既存本文を取得せずに追記でき、新しいリビジョンとして保存)
esa_prepend_post記事本文の先頭に追記(既存本文を取得せずに追記でき、新しいリビジョンとして保存)
esa_archive_post記事をアーカイブ(Archived/ カテゴリーへ移動)
esa_ship_post記事を Ship It!(WIP を外して公開)
esa_duplicate_post記事を複製(同じタイトル・本文の WIP 記事を作成。別チームへの複製も可能)

How to install the Esa MCP server

{
  "mcpServers": {
    "esa": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "ESA_ACCESS_TOKEN",
        "-e",
        "LANG",
        "ghcr.io/esaio/esa-mcp-server"
      ],
      "env": {
        "ESA_ACCESS_TOKEN": "your_personal_access_token",
        "LANG": "ja"
      }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
ESA_ACCESS_TOKENCredential the server authenticates with.Yes
LANGConfiguration value read at startup.Optional

Example prompts to try

  • Use Esa to esa get teams.
  • Use Esa to esa get team stats.
  • Use Esa to esa get team tags.

Frequently asked questions

It connects Esa to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (esa_get_teams, esa_get_team_stats, esa_get_team_tags, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Esa directly.