プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Ethora MCP Server

作者:dapprosバージョン 26.10.1i★ –iパソコンでもクラウドでも
レジストリ名io.github.dappros/ethora-mcp-server

インストール

概要

作者による説明(英語の原文)

Ethora chat platform MCP: apps, users, rooms, AI agents, chat widgets. Hosted or stdio.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンでもクラウドでも
  • トランスポート: stdio, Streamable HTTP
  • カテゴリ: チャット・メール
  • 入力が必要なもの:ETHORA_APP_JWT, ETHORA_B2B_TOKEN

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • 作者のサーバーで動きます。あなたが頼んだ内容は、作者のサーバーを通ります。
  • 自分で入力するもの: ETHORA_API_URL, ETHORA_BASE_URL, ETHORA_APP_JWT, ETHORA_B2B_TOKEN, ETHORA_MCP_ENABLE_DANGEROUS_TOOLS

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • クラウドで動くインストール不要。インターネット経由でつながります
  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

ウェブ、デスクトップ、モバイルのClaudeで使えます:

  1. Settings → Connectors を開く
  2. Add custom connector を押す
  3. 下のアドレスを貼り付けて Add を押す
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Add2https://…3
https://mcp.chat.ethora.com/mcp/oauth

または、パソコンで動かす

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "ethora": {
      "command": "npx",
      "args": [
        "-y",
        "@ethora/mcp-server"
      ],
      "env": {
        "ETHORA_API_URL": "your-value",
        "ETHORA_BASE_URL": "your-value",
        "ETHORA_APP_JWT": "your-value",
        "ETHORA_B2B_TOKEN": "your-value",
        "ETHORA_MCP_ENABLE_DANGEROUS_TOOLS": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add --transport http ethora https://mcp.chat.ethora.com/mcp/oauth

または、パソコンで動かす

claude mcp add ethora --env ETHORA_API_URL=your-value --env ETHORA_BASE_URL=your-value --env ETHORA_APP_JWT=your-value --env ETHORA_B2B_TOKEN=your-value --env ETHORA_MCP_ENABLE_DANGEROUS_TOOLS=your-value -- npx -y @ethora/mcp-server

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "ethora": {
      "url": "https://mcp.chat.ethora.com/mcp/oauth"
    }
  }
}

または、パソコンで動かす

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "ethora": {
      "command": "npx",
      "args": [
        "-y",
        "@ethora/mcp-server"
      ],
      "env": {
        "ETHORA_API_URL": "your-value",
        "ETHORA_BASE_URL": "your-value",
        "ETHORA_APP_JWT": "your-value",
        "ETHORA_B2B_TOKEN": "your-value",
        "ETHORA_MCP_ENABLE_DANGEROUS_TOOLS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "ethora": {
      "type": "http",
      "url": "https://mcp.chat.ethora.com/mcp/oauth"
    }
  }
}

または、パソコンで動かす

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "ethora": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@ethora/mcp-server"
      ],
      "env": {
        "ETHORA_API_URL": "your-value",
        "ETHORA_BASE_URL": "your-value",
        "ETHORA_APP_JWT": "your-value",
        "ETHORA_B2B_TOKEN": "your-value",
        "ETHORA_MCP_ENABLE_DANGEROUS_TOOLS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

ChatGPTがつなげるのは、インターネット上のサーバーだけです:

  1. ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
  2. Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
  3. 下のアドレスを貼り付け、名前を付けて保存する
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Create2https://…3
https://mcp.chat.ethora.com/mcp/oauth

メニューの名前は、プランや時期によって少し違うことがあります。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • ETHORA_API_URL env
    Full Ethora API URL. Defaults to https://api.chat.ethora.com/v1 if neither ETHORA_API_URL nor ETHORA_BASE_URL is set.
  • ETHORA_BASE_URL env
    Base host URL (e.g. https://api.chat.ethora.com). The server appends /v1 automatically. Use ETHORA_API_URL instead if you need a non-/v1 path.
  • ETHORA_APP_JWT 秘密 env
    App JWT used for the user-auth bootstrap flow (login/register). Usually starts with 'JWT '. Optional; can also be set at runtime via the ethora-configure tool.
  • ETHORA_B2B_TOKEN 秘密 env
    B2B server token used for tenant-actor x-custom-token auth (JWT with type=server). Required for B2B / app provisioning flows. Optional; can also be set at runtime.
  • ETHORA_MCP_ENABLE_DANGEROUS_TOOLS env
    Set to 'true' to expose destructive tools (app deletion, wallet transfers, bulk delete). Disabled by default.

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

このサーバーのツール一覧はまだ読み取っていません。エンドポイントは順番にチェックしています。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント dappros で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    エンドポイントが応答する

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

    OAuthでサインイン

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

    ツールの説明に隠れた指示がない

    まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります

チャット・メールのほかのサーバーとの比較i

  • このカテゴリのほかの1771件のうち0%よりスターが多い
  • このカテゴリのほかの1771件のうち57%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの1771件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Ethora MCP Serverは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:ETHORA_APP_JWT, ETHORA_B2B_TOKEN

パソコンで動きますか、それともクラウドですか?

どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(26.10.1)がレジストリに届いたのは21 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Vexa, emailmd, MCP WhatsApp Cloud

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Vexa

作者:Vexa-ai

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

クラウドで動く★ 2,949Apache-2.02 か月前更新
インストール

emailmd

作者:anypost

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

パソコンでもクラウドでも★ 1,385MIT31 日前更新
インストール

MCP WhatsApp Cloud

作者:codespar

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

パソコンで動く★ 277MIT5 か月前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

Ethora MCP Server (Model Context Protocol)

Add the hosted server in one click. You sign in through your browser; there is nothing to install and no key to paste.

For Claude.ai, ChatGPT, Claude Desktop, LM Studio and anything else that takes a connector URL, add https://mcp.chat.ethora.com/mcp/oauth and sign in. Running it yourself instead? See Using with stdio clients.

The MCP server for Ethora, an open-source chat and messaging platform with a built-in AI agent framework. It lets Claude, ChatGPT, Cursor, Claude Code, VS Code and autonomous agents create Ethora apps, chat rooms, users and AI agents, post messages, index RAG sources and produce website chat-widget embeds, all through tool calls.

Part of the [Ethora SDK ecosystem](https://github.com/dappros/ethora#ecosystem). Cross-SDK updates: Release Notes. Package changes: CHANGELOG.md.

Three ways to use it

Where it runsBest for
Hosted (Ethora Cloud)https://mcp.chat.ethora.com/mcp (production; https://mcp.chat-qa.ethora.com/mcp is the QA instance)Claude.ai, ChatGPT, Claude Code, Cursor and agents that talk to Ethora Cloud with no local install
Self-hostedShips with the Ethora monoserver deploy; enable services.mcp.enabled in deploy.yml and it is served at mcp. /mcpDedicated or on-premise Ethora installs; agent traffic never leaves your infrastructure
stdio CLInpx -y @ethora/mcp-server on your machine, configured with env varsLocal development, CI, and clients that launch a command

The hosted and self-hosted modes are the same server started with ETHORA_MCP_TRANSPORT=http. Every MCP session has private in-memory state: one client's login, selected app or tokens are never visible to another session.

Account memory. Some clients open a new MCP session for every tool call (ChatGPT does), which would lose the selected app between calls. So the server keeps a small snapshot per signed-in account, keyed by the user id in the bearer token: the current app and agent, the appToken the API handed that account for the current app, and the enabled tool groups. A new session that arrives with a token for the same account (OAuth, personal URL or Bearer header) gets it back, after the token has been validated against the API. Memory lives in the process, expires after 24 hours idle, and never holds the user token itself. Two more defaults close the same gap: ethora-app-create selects the new app, and an account that owns exactly one app has it selected automatically on the first app-scoped call.

60-second quickstart

Claude.ai or ChatGPT (custom connector). In the Ethora web app open Account, then the AI Assistants tab, create an API key and copy the personal connector URL it shows (https://mcp.chat.ethora.com/mcp/k/ ). Paste it as a custom connector. Every conversation is authenticated with no login step. For a listed connector that uses the vendor's OAuth login instead, the URL is https://mcp.chat.ethora.com/mcp/oauth.

Claude Code.

# with a personal connector URL (no headers needed)

claude mcp add --transport http ethora https://mcp.chat.ethora.com/mcp/k/

or the open endpoint plus a Bearer header

claude mcp add --transport http ethora https://mcp.chat.ethora.com/mcp --header "Authorization: Bearer "

Cursor, VS Code, and any client that takes a URL and headers.

{

"mcpServers": { "ethora": { "url": "https://mcp.chat.ethora.com/mcp", "headers": { "Authorization": "Bearer " } } } }

Autonomous agents with no account yet. Connect to https://mcp.chat.ethora.com/mcp with no credentials and call ethora-user-register with an email, first and last name. It creates the account, logs the session in, and returns a generated password plus an API key and connectorUrl exactly once. Store the key and reconnect later with the Bearer header or the personal URL; nothing else is needed, no browser and no email confirmation.

stdio CLI.

ETHORA_API_URL=https://api.chat.ethora.com/v1 ETHORA_APP_JWT="JWT <your app jwt>" npx -y @ethora/mcp-server

Then ask your agent to call ethora-status, ethora-user-login (or ethora-user-register) and ethora-app-list. Lost at any point, call ethora-help: it reads the current state and returns the recommended next calls.

Entry points and authentication

Entry pointWho supplies identityTypical client
/mcp (add ?tools=all to list every tool up front)Nobody at connect time. Call ethora-user-login or ethora-user-register inside the session, or send Authorization: Bearer on every request (user API key, app token or B2B token; the server picks the auth mode from the token type)Agents, Claude Code, Cursor, connectors added as "no auth"
/mcp/k/ The key in the path, applied like a Bearer headerClaude.ai and ChatGPT custom connectors, which take a URL but no headers
/mcp/oauthAn OAuth 2.1 access token obtained through the Ethora authorization server (dynamic client registration, PKCE, access scopes read, write, admin, plus the identity scopes openid and email for directories that require them)Connector directories (Claude, ChatGPT); vendors run the login flow themselves
stdioEnv vars ETHORA_APP_JWT (login/register bootstrap) and optional ETHORA_B2B_TOKEN, or ethora-session-configure at runtimeLocal CLI

Stay in user auth mode on the hosted server (ethora-status shows authMode: user). App-token and B2B modes exist for server integrations; the agents and rooms routes reject app tokens.

API keys
  • ethora-api-key-create { name?, ttlDays? } mints a key (default 90 days, max 365), shown once together with connectorUrl. ethora-user-register mints one by default and ethora-user-login { createApiKey: true } on request.
  • ethora-api-key-list shows id, name, created and expiry, never the value. ethora-api-key-revoke { id } invalidates it immediately: the next request with that key fails with REFRESH_RECORD_NOT_FOUND.
  • The same keys are managed in the Ethora web app under Account, AI Assistants, where the personal URL, a Claude Code one-liner and a Cursor config are shown with copy buttons.
  • A key acts as the user. Treat the personal URL like a password: do not share screenshots of it, revoke it if it leaks. The server never logs request URLs, and the monoserver nginx template logs method and status only on the MCP host.
OAuth 2.1 (/mcp/oauth)

Set ETHORA_MCP_AUTH_ISSUER to the public URL of the Ethora API that hosts the authorization server (the monoserver deploy sets it). The MCP server then:

  • serves RFC 9728 protected-resource metadata at /.well-known/oauth-protected-resource and /.well-known/oauth-protected-resource/mcp/oauth, naming the authorization server and the three scopes;
  • answers unauthenticated requests on /mcp/oauth with 401 and WWW-Authenticate: Bearer resource_metadata="...", which is how clients discover the flow;
  • validates each token against the API once per session (cached five minutes) and enforces the token's scope per tool: read-only tools need read; deleting, revoking and rotating (and revealing a credential) need admin; everything else, including updates that overwrite fields and are therefore marked destructive, needs write. search, fetch, ethora-help, ethora-status and ethora-doctor need no scope. Tokens without a scope claim (API keys) get full access;
  • hides the identity tools (ethora-user-login, ethora-user-register, ethora-session-configure, ethora-auth-mode-set, ethora-auth-mode-set, ethora-api-key-create, ethora-api-key-list, ethora-api-key-revoke) because the token already fixes who you are.

The authorization server itself is part of the Ethora backend: /.well-known/oauth-authorization-server, /oauth/register, /oauth/authorize (a consent page with sign-in, account creation and Google sign-in), /oauth/token, /oauth/revoke and /oauth/userinfo. Users see and disconnect OAuth grants under Account, AI Assistants, Connected AI apps. When ETHORA_MCP_AUTH_ISSUER is unset, both OAuth routes return 404 and discovery omits them.

Identity scopes. Some directories (ChatGPT) require the minimal OpenID Connect surface on top of OAuth 2.1: the openid and email scopes and a userinfo endpoint that returns sub, email and email_verified. These scopes grant no access to apps or data; they only let the client see who signed in, and the consent page says so in plain words. There are no ID tokens or JWKS, because nothing consumes them.

Email confirmation is optional. Ethora never blocks sign-up or the dashboard on a confirmed address. When a client asks for the identity scopes and the account's address is not yet confirmed, the consent page adds one step: send the confirmation link, continue after confirming, or continue without sharing the address (the identity scopes are dropped from the grant and everything else proceeds). Google sign-ins arrive confirmed and skip the step. The same confirmation can be sent from Account, AI Assistants in the web app.

What agents can do

The end-to-end journey a new user typically asks for, with the tools in order:

  1. ethora-user-register (or ethora-user-login) to get an authenticated session and an API key.
  2. ethora-app-create { displayName } then ethora-app-select { appId } to make the new app current.
  3. ethora-chat-create { title } to create a group room. The result contains the room JID ${appId}_${chatId}; every room tool accepts the JID or the bare chatId.
  4. ethora-agent-create { name, prompt, ... } to create an AI agent persona in that app.
  5. ethora-agent-invite { agentIdOrAddress, chatJid } to put the agent in the room. A bot instance is spawned live, no restart needed.
  6. ethora-message-send { text, roomJid, waitForReplySec: 45 } to post a message and wait for the agent's answer, returned as replies. ethora-chat-history reads

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く