Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
koki-develop avatar

Esa Mcp Server

  • 2 repo stars
  • Updated September 18, 2025
  • koki-develop/esa-mcp-server

esa MCP Server is a MCP server that lets agents interact with your esa.io team knowledge base via stdio.

About

The esa MCP server connects AI coding agents to esa.io, the team knowledge base many Japanese and startup teams use for specs, retros, and API notes. Instead of pasting wiki excerpts into chat, you register stdio MCP with your esa team slug and personal access token so the agent can fetch or update esa content in flow. It suits documentation and light PM hygiene when you are the only engineer but still want a single source of truth next to your repo. Complexity is intermediate because you must provision esa credentials and understand team-scoped URLs. It does not replace esa’s web UI for heavy formatting or permissions review, and it is irrelevant if your stack uses Notion or GitHub Wiki only. For Claude Code or Cursor users already paying for esa, this MCP removes copy-paste friction between tickets, SKILL.md drafts, and shared team pages.

  • Official-style MCP bridge for esa.io knowledge base
  • npm package @koki-develop/esa-mcp-server v0.3.2 stdio
  • Requires ESA_TEAM and ESA_ACCESS_TOKEN environment variables
  • Personal access token marked secret in server metadata
  • GitHub-hosted server for koki-develop/esa-mcp-server

Esa Mcp Server by the numbers

  • Data as of Jul 7, 2026 (Skillselion catalog sync)
terminal
claude mcp add --env ESA_TEAM=YOUR_ESA_TEAM --env ESA_ACCESS_TOKEN=YOUR_ESA_ACCESS_TOKEN esa-mcp-server -- npx -y @koki-develop/esa-mcp-server

Add your badge

Show developers this MCP server is listed on Skillselion. Paste this into your README.

Listed on Skillselion
repo stars2
Package@koki-develop/esa-mcp-server
TransportSTDIO
AuthRequired
Last updatedSeptember 18, 2025
Repositorykoki-develop/esa-mcp-server

What it does

Read and manage esa.io team notes and documentation from your agent using team name and personal access token.

Who is it for?

Best when you're already on esa.io and want Claude Code or Cursor to reference and update team docs during build.

Skip if: Skip if you're on other wikis only, or teams that cannot issue esa personal access tokens.

What you get

Agents pull and work against esa.io content in context so docs and code stay aligned without constant copy-paste.

  • Agent-accessible esa.io pages and team-scoped knowledge operations
  • Less context switching between wiki and IDE during implementation
  • Document updates synchronized through MCP instead of manual paste

By the numbers

  • Server version 0.3.2 per published schema
  • Two required env vars: ESA_TEAM and ESA_ACCESS_TOKEN
  • npm identifier @koki-develop/esa-mcp-server
README.md

[!IMPORTANT] An official MCP server has been released. Please use the official server going forward.

esa MCP Server

Version License Docker

A Model Context Protocol (MCP) server for esa.io.

Table of Contents

Usage

Prerequisites

Before using this MCP server, you need to generate a personal access token from your esa.io team:

  1. Go to https://<TEAM_NAME>.esa.io/user/applications
  2. Create a new personal access token
  3. Copy the token for configuration

Configuration

You can run the server either via npx or Docker.

Using npx

Add the following configuration to your MCP client:

{
  "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>"
      }
    }
  }
}

Replace <your-team-name> and <your-personal-access-token> with your team name and personal access token.

Using Docker

If you prefer Docker, use the following configuration:

{
  "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>"
      }
    }
  }
}
Read-only Mode

To enable read-only mode that only allows read operations, add the --readonly flag.

Using 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>"
      }
    }
  }
}

Using 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>"
      }
    }
  }
}

In read-only mode, only the following operations are available:

  • get_posts - retrieve posts
  • get_post - retrieve a specific post
  • get_tags - retrieve tags
  • get_post_comments - retrieve post comments

Write operations (create_post, update_post, delete_post, create_post_comment, update_comment, delete_comment) are disabled.

MCP Tools

Posts

Tool Description
get_posts Retrieve a list of posts from the esa team. Supports search queries, filtering, sorting, and pagination. Returns post metadata including title, content, tags, categories, author information, and engagement metrics (comments, stars, watches). Optionally includes comments and stargazers with the include parameter. Supports nested inclusion like 'comments,comments.stargazers'. Note: Post content (body_md) is truncated to 300 characters with a body_truncated field indicating if truncation occurred to reduce context size.
get_post Retrieve a specific post from the esa team by post number. Returns complete post details including title, content (markdown), tags, category, author information, revision history, and engagement metrics. Optionally includes comments and stargazers. Supports nested inclusion like 'comments,comments.stargazers'.
create_post Create a new post in the esa team. Requires a title and optionally accepts content, tags, category, WIP status, and other metadata. Returns the created post information including the assigned post number and URL.
update_post Update an existing post in the esa team. Requires a post number and optionally accepts updated content, tags, category, WIP status, and other metadata. Returns the updated post information including revision details.
delete_post Delete an existing post from the esa team. Requires a post number. The post will be permanently deleted and cannot be recovered. Returns a confirmation message upon successful deletion.

Tags

Tool Description
get_tags Get a list of all tags used in the esa team. Returns tags with their names and the number of posts they are attached to, sorted by post count in descending order. Supports pagination.

Comments

Tool Description
get_post_comments Retrieve a list of comments for a specific post from the esa team. Requires a post number and supports pagination. Returns comment metadata including content, author information, timestamps, and engagement metrics (stars).
create_post_comment Create a new comment on an existing post in the esa team. Requires a post number and comment content in Markdown format. Returns the created comment information including ID, content, timestamps, and author details.
update_comment Update an existing comment on a post in the esa team. Requires a comment ID and new content in Markdown format. Returns the updated comment information including content, timestamps, and author details.
delete_comment Delete an existing comment from the esa team. Requires a comment ID. The comment will be permanently deleted and cannot be recovered. Returns a confirmation message upon successful deletion.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright (c) 2025 Koki Sato

Recommended MCP Servers

How it compares

esa.io integration MCP, not a standalone note-taking skill or generic web scraper.

FAQ

Who is esa MCP Server for?

It is for developers using esa.io as a team wiki who want MCP agents to read and manage esa content with proper API credentials.

When should I use esa MCP Server?

Use it during build and docs upkeep when specs, runbooks, or meeting notes on esa should drive or receive agent edits alongside code.

How do I add esa MCP Server to my agent?

Install @koki-develop/esa-mcp-server, set ESA_TEAM and ESA_ACCESS_TOKEN in your MCP env, and register the stdio server in Claude Code, Cursor, or your client.

Communicationdocsintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.