esa MCP Server

resmi

Server Protokol Konteks Model (MCP) resmi untuk esa.io - versi transport STDIO.

Apa yang bisa Anda lakukan dengan Esa MCP?

  • Daftar tim esa dan statistik tim Anda — Gunakan esa_get_teams dan esa_get_team_stats untuk melihat tim mana yang dapat Anda akses dan metrik aktivitasnya.
  • Cari dan ambil postingan esa — Temukan postingan dengan esa_search_posts, lalu dapatkan konten lengkap dan metadata dengan esa_get_post.
  • Buat, perbarui, atau tambahkan ke postingan — Buat draf postingan baru melalui esa_create_post, ubah postingan yang sudah ada dengan esa_update_post, atau tambahkan konten tanpa mengambil body saat ini menggunakan esa_append_post / esa_prepend_post.
  • Kelola status alur kerja postingan — Arsipkan postingan dengan esa_archive_post, tandai sebagai dikirim melalui esa_ship_post, atau duplikat antar tim menggunakan esa_duplicate_post.
  • Bekerja dengan komentar — Daftar, buat, perbarui, atau hapus komentar pada postingan menggunakan esa_get_post_comments, esa_create_comment, esa_update_comment, dan esa_delete_comment.
  • Jelajahi kategori dan tag — Jelajahi struktur kategori tim dengan esa_get_all_category_paths dan esa_get_categories, atau tinjau semua tag melalui esa_get_team_tags.

Dokumentasi

esa MCP Server

License: MIT

日本語 | English

Server Model Context Protocol (MCP) resmi untuk esa.io - versi transport STDIO.

Gambaran Umum

Server MCP ini menyediakan integrasi mulus antara asisten AI dan esa.io, sebuah platform dokumentasi kolaboratif. Server ini memungkinkan asisten AI untuk membaca, membuat, memperbarui, dan mengelola dokumen esa secara langsung melalui Model Context Protocol.

Alat yang Tersedia

Manajemen Tim

  • esa_get_teams - Dapatkan tim esa yang dapat diakses pengguna
  • esa_get_team_stats - Dapatkan statistik tim (anggota, postingan, komentar, bintang, pantauan, pengguna aktif)
  • esa_get_team_tags - Dapatkan semua tag yang digunakan dalam postingan tim beserta jumlahnya
  • esa_get_team_members - Dapatkan anggota tim dengan peran dan informasi profil

Manajemen Postingan

  • esa_search_posts - Cari postingan di esa.io
  • esa_get_post - Dapatkan postingan tertentu berdasarkan nomor postingan (termasuk backlinks_count dan body_md_stats dengan jumlah karakter dan baris isi)
  • esa_get_post_backlinks - Daftar postingan yang merujuk ke postingan tertentu dengan paginasi
  • esa_create_post - Buat postingan baru dengan tag, kategori, dan status WIP
  • esa_update_post - Perbarui postingan yang ada (judul, konten, tag, kategori, status WIP)
  • esa_append_post - Tambahkan konten ke akhir isi postingan (tidak perlu mengambil isi saat ini; disimpan sebagai revisi baru)
  • esa_prepend_post - Tambahkan konten ke awal isi postingan (tidak perlu mengambil isi saat ini; disimpan sebagai revisi baru)

Tindakan Postingan

  • esa_archive_post - Arsipkan postingan dengan memindahkannya ke kategori Archived/
  • esa_ship_post - Kirim postingan (tandai sebagai selesai dengan mengatur wip ke false)
  • esa_duplicate_post - Gandakan postingan (buat postingan WIP baru dengan judul dan isi yang sama; duplikasi lintas tim juga didukung)

Manajemen Komentar

  • esa_get_comment - Dapatkan komentar tertentu berdasarkan ID
  • esa_create_comment - Buat komentar baru pada postingan
  • esa_update_comment - Perbarui komentar yang ada
  • esa_delete_comment - Hapus komentar
  • esa_get_post_comments - Dapatkan komentar untuk postingan tertentu dengan paginasi
  • esa_get_team_comments - Dapatkan komentar tim dengan paginasi

Manajemen Kategori

  • esa_get_categories - Dapatkan kategori dan subkategori untuk jalur tertentu
  • esa_get_top_categories - Dapatkan semua kategori tingkat atas untuk tim
  • esa_get_all_category_paths - Dapatkan semua jalur kategori dalam tim (dengan jumlah postingan, mendukung penyaringan)
    • Sempurna untuk memahami struktur kategori, perencanaan organisasi, dan pembersihan
    • Contoh filter: prefix: "dev" untuk terkait pengembangan, match: "api" untuk kategori terkait API

Lampiran

  • esa_get_attachment - Ambil file lampiran dari postingan dan komentar esa
    • Mengembalikan data berenkode base64 untuk gambar yang didukung (JPEG, PNG, GIF, WebP) di bawah 30MB
    • Mengembalikan URL bertanda tangan (berlaku selama 5 menit) untuk jenis file lain, gambar yang lebih besar, atau saat forceSignedUrl ditentukan

Bantuan & Dokumentasi

  • esa_get_search_options_help - Dapatkan dokumentasi sintaks pencarian esa
  • esa_get_markdown_syntax_help - Dapatkan dokumentasi sintaks Markdown esa
  • esa_search_help - Cari dokumentasi esa untuk fitur dan terminologi

Sumber Daya yang Tersedia

  • esa_recent_posts - Ambil postingan yang baru diperbarui dari tim esa
    • Templat: esa://teams/{teamName}/posts/recent
    • Mengembalikan: Daftar JSON postingan yang baru diperbarui

Prompt yang Tersedia

  • esa_summarize_post - Ringkas konten postingan esa
    • Masukan: Nama tim dan nomor postingan
    • Keluaran: Ringkasan terstruktur dari konten postingan

Konfigurasi Klien MCP

Tambahkan ke file konfigurasi klien MCP Anda:

Variabel Lingkungan yang Diperlukan

  • ESA_ACCESS_TOKEN: Token Akses
    • Cakupan yang diperlukan: read write atau admin:comment read:post write:post read:category read:tag read:attachment read:team read:member
    • PAT v2 direkomendasikan.
  • LANG: Bahasa untuk UI

Contoh Claude Desktop

Tambahkan ke claude_desktop_config.json:

Opsi 1: Docker (Direkomendasikan)

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

Opsi 2: npx

{
  "mcpServers": {
    "esa": {
      "command": "/Users/your-username/.nodenv/shims/npx",
      "args": ["@esaio/esa-mcp-server"],
      "env": {
        "ESA_ACCESS_TOKEN": "your_personal_access_token",
        "LANG": "en"
      }
    }
  }
}

Catatan: Ganti /path/to/your/node dengan keluaran dari perintah which node.

Registri

Paket ini mengirimkan registry.json di root paket, mengekspos alat, sumber daya, dan prompt yang terdaftar. Ini dapat digunakan secara terprogram tanpa menjalankan server:

import registry from "@esaio/esa-mcp-server/registry.json" with { type: "json" };

Skema:

{
  "tools": [{ "name": "esa_get_teams" }, "..."],
  "resources": [
    { "name": "esa_recent_posts", "uriTemplate": "esa://teams/{teamName}/posts/recent" }
  ],
  "prompts": [{ "name": "esa_summarize_post" }]
}

File ini dibuat ulang oleh npm run build:registry dan pemeriksaan CI memastikan bahwa file tersebut tetap sinkron dengan set yang terdaftar.

Tautan

Dukungan


Dibuat dengan ❤️ oleh tim esa