MCP server for the Ethora chat & messaging platform: login, manage apps and chat rooms, broadcast messages, and deploy AI agents / chatbots with RAG sources.
Déduit des transports déclarés par cette annonce (stdio). Un client absent de cette liste n’est pas écarté pour autant — c’est simplement quelque chose que Forge ne peut pas confirmer.
ETHORA_APP_JWTClé d’APIfacultatifApp 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_TOKENClé d’APIfacultatifB2B 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.
Déclaré par l’auteur dans le registre MCP officiel. Forge does not store, broker, or ever see these values — the config below is scaffolded with placeholders you fill in locally.
La vérification confirme l’identité de l’éditeur (la propriété du dépôt), pas la sûreté du code. L’analyse de sécurité couvre les CVE connues et les scripts d’installation suspects.
Lu dans le code que npm livre réellement, au moment de l’analyse. Le paquet n’a jamais été exécuté. Les outils enregistrés dynamiquement à l’exécution, ou cachés dans du code empaqueté ou minifié, peuvent passer inaperçus — c’est donc un plancher de la surface d’outils, pas un recensement complet.
ethora-configureSet the Ethora API URL and credentials for this MCP session. Stores values in memory only; each call merges with omitted fields kept. Alternative to env vars (ETHORA_API_URL / ETHORA_APP_JWT / ETHORA_APP_TOKEN / ETHORA_B2B_TOKEN).
Auth: none required — this establishes auth material. Errors: only i…Set the Ethora API URL and credentials for this MCP session. Stores values in memory only; each call merges with omitted fields kept. Alternative to env vars (ETHORA_API_URL / ETHORA_APP_JWT / ETHORA_APP_TOKEN / ETHORA_B2B_TOKEN). Auth: none required — this establishes auth material. Errors: only i…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-statusReport the current Ethora MCP session state: configured API URL, active auth mode, which credentials are present (booleans like `hasAppJwt` — values never echoed), and the selected appId/agentId.
Auth: none required. Errors: effectively none. Related: `ethora-doctor` for an active connectivity chec…Report the current Ethora MCP session state: configured API URL, active auth mode, which credentials are present (booleans like `hasAppJwt` — values never echoed), and the selected appId/agentId. Auth: none required. Errors: effectively none. Related: `ethora-doctor` for an active connectivity chec…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-helpTask-oriented orientation for this MCP server: explains the three Ethora auth modes (user / app-token / B2B) and recommends next tool calls + recipes based on current session state.
Auth: none required — inspects state, no API calls. Errors: effectively none. Related: pass a recommended recipe id t…Task-oriented orientation for this MCP server: explains the three Ethora auth modes (user / app-token / B2B) and recommends next tool calls + recipes based on current session state. Auth: none required — inspects state, no API calls. Errors: effectively none. Related: pass a recommended recipe id t…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-run-recipeExecute a built-in recipe — an ordered sequence of this server's own tool calls — by id. Recipes capture common flows (B2B bootstrap, broadcast, sources ingest). Use `dryRun: true` to preview resolved steps. Omit `recipeId` to list runnable recipes for a `goal`.
Auth: depends on the recipe's steps…Execute a built-in recipe — an ordered sequence of this server's own tool calls — by id. Recipes capture common flows (B2B bootstrap, broadcast, sources ingest). Use `dryRun: true` to preview resolved steps. Omit `recipeId` to list runnable recipes for a `goal`. Auth: depends on the recipe's steps…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-doctorDiagnose the session: validate the config is internally consistent for the active auth mode and ping the Ethora API (`GET /v1/ping`). Returns `{ state, checks, ping, suggestions }`.
Auth: none required; report is tailored to whatever credentials are set. Errors: rarely throws — instead returns `sug…Diagnose the session: validate the config is internally consistent for the active auth mode and ping the Ethora API (`GET /v1/ping`). Returns `{ state, checks, ping, suggestions }`. Auth: none required; report is tailored to whatever credentials are set. Errors: rarely throws — instead returns `sug…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-auth-use-appSwitch this session's active auth mode to app-token, so subsequent app-scoped calls authenticate with the configured `appToken`.
Auth: requires an `appToken` to already be configured (via `ethora-configure`, ETHORA_APP_TOKEN env, or `ethora-app-select`). Errors: returns an error if no `appToken` is…Switch this session's active auth mode to app-token, so subsequent app-scoped calls authenticate with the configured `appToken`. Auth: requires an `appToken` to already be configured (via `ethora-configure`, ETHORA_APP_TOKEN env, or `ethora-app-select`). Errors: returns an error if no `appToken` is…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-auth-use-userSwitch this session's active auth mode to user-session, so subsequent calls authenticate as a logged-in Ethora user.
Auth: the switch needs nothing, but user-auth tools only work once `ethora-user-login` stores a user token (login also needs a configured `appJwt`). Errors: none on the switch; downs…Switch this session's active auth mode to user-session, so subsequent calls authenticate as a logged-in Ethora user. Auth: the switch needs nothing, but user-auth tools only work once `ethora-user-login` stores a user token (login also needs a configured `appJwt`). Errors: none on the switch; downs…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-auth-use-b2bSwitch this session's active auth mode to B2B, so subsequent calls authenticate as a tenant actor via the `x-custom-token` header.
Auth: requires a `b2bToken` (JWT with `type=server`) to already be configured (via `ethora-configure` or ETHORA_B2B_TOKEN env). Errors: returns an error if no `b2bToken…Switch this session's active auth mode to B2B, so subsequent calls authenticate as a tenant actor via the `x-custom-token` header. Auth: requires a `b2bToken` (JWT with `type=server`) to already be configured (via `ethora-configure` or ETHORA_B2B_TOKEN env). Errors: returns an error if no `b2bToken…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-app-selectSet the current app context for this session so app-scoped tools can omit their `appId` argument. Stores `currentAppId` and, if given, `appToken` (which defaults the auth mode to app-token unless `authMode` overrides).
Auth: none required to set the context. Errors: effectively none — a non-existen…Set the current app context for this session so app-scoped tools can omit their `appId` argument. Stores `currentAppId` and, if given, `appToken` (which defaults the auth mode to app-token unless `authMode` overrides). Auth: none required to set the context. Errors: effectively none — a non-existen…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-agent-selectSet the current saved-agent context for this session, so agent-scoped tools can omit their `agentId` argument. Stores `currentAgentId` in session state.
Auth: none required. Errors: effectively none — the `agentId` is not validated here; a bad id surfaces on the first agent-scoped API call. Related…Set the current saved-agent context for this session, so agent-scoped tools can omit their `agentId` argument. Stores `currentAgentId` in session state. Auth: none required. Errors: effectively none — the `agentId` is not validated here; a bad id surfaces on the first agent-scoped API call. Related…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-chats-broadcast-v2Enqueue an asynchronous broadcast job posting a message to one or more chat rooms of an app — returns a `jobId`; messages are not sent synchronously. Targeting is exclusive: `allRooms`, `chatIds`, or `chatNames`, not a mix.
Auth: app-token mode OR B2B mode with an explicit `appId`. Errors: 401/403…Enqueue an asynchronous broadcast job posting a message to one or more chat rooms of an app — returns a `jobId`; messages are not sent synchronously. Targeting is exclusive: `allRooms`, `chatIds`, or `chatNames`, not a mix. Auth: app-token mode OR B2B mode with an explicit `appId`. Errors: 401/403…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-chats-broadcast-job-v2Fetch the current status and per-room results of a broadcast job by `jobId` (one-shot, no polling). Returns the job object with its `state` (pending/running/completed/failed).
Auth: app-token mode OR B2B mode with an explicit `appId` — must match the auth used to enqueue the job. Errors: 401/403 wr…Fetch the current status and per-room results of a broadcast job by `jobId` (one-shot, no polling). Returns the job object with its `state` (pending/running/completed/failed). Auth: app-token mode OR B2B mode with an explicit `appId` — must match the auth used to enqueue the job. Errors: 401/403 wr…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-wait-broadcast-job-v2Block until a broadcast job reaches a terminal state (`completed` or `failed`) or until `timeoutMs` — read-only polling wrapper around `ethora-chats-broadcast-job-v2`. Returns `{ done, state, job }`, or `{ done: false, reason: "timeout" }` on timeout.
Auth: app-token mode OR B2B mode with an explic…Block until a broadcast job reaches a terminal state (`completed` or `failed`) or until `timeoutMs` — read-only polling wrapper around `ethora-chats-broadcast-job-v2`. Returns `{ done, state, job }`, or `{ done: false, reason: "timeout" }` on timeout. Auth: app-token mode OR B2B mode with an explic…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-files-upload-v2privilégiéUpload 1–5 files to the authenticated user's Ethora file storage (`POST /v2/files`). Each upload is a new record (no overwrite-by-name); files passed as base64, 50MB max each.
Auth: user-auth mode with an active user session (`ethora-user-login` first). Errors: 401 not logged in; 413 size limit exc…Upload 1–5 files to the authenticated user's Ethora file storage (`POST /v2/files`). Each upload is a new record (no overwrite-by-name); files passed as base64, 50MB max each. Auth: user-auth mode with an active user session (`ethora-user-login` first). Errors: 401 not logged in; 413 size limit exc…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-files-get-v2List the authenticated user's files, or fetch one file's metadata by id (`GET /v2/files`). Returns an array when `id` is omitted, a single record when given.
Auth: user-auth mode with an active user session. Errors: 401 not logged in; 404 unknown `id` or not owned by the user.List the authenticated user's files, or fetch one file's metadata by id (`GET /v2/files`). Returns an array when `id` is omitted, a single record when given. Auth: user-auth mode with an active user session. Errors: 401 not logged in; 404 unknown `id` or not owned by the user.
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-files-delete-v2privilégiéPermanently delete one of the authenticated user's files by id (`DELETE /v2/files/:id`). Removes the record and its stored content; not reversible.
Auth: user-auth mode with an active user session. Errors: 401 not logged in; 403 not owned by the user; 404 unknown `id`. Related: get ids from `ethora…Permanently delete one of the authenticated user's files by id (`DELETE /v2/files/:id`). Removes the record and its stored content; not reversible. Auth: user-auth mode with an active user session. Errors: 401 not logged in; 403 not owned by the user; 404 unknown `id`. Related: get ids from `ethora…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-sources-site-crawlCrawl a website URL and ingest its content into an app's RAG sources (legacy user-auth route). Async — pages become queryable once indexing finishes; `followLink: true` follows in-domain links and can ingest many pages.
Auth: user-auth mode, active session; the user must own the app. Errors: 401 no…Crawl a website URL and ingest its content into an app's RAG sources (legacy user-auth route). Async — pages become queryable once indexing finishes; `followLink: true` follows in-domain links and can ingest many pages. Auth: user-auth mode, active session; the user must own the app. Errors: 401 no…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-sources-site-reindexRe-crawl and re-embed a previously crawled URL by its `urlId`, refreshing the RAG content for that page (legacy user-auth route). Async — the existing source record is updated in place once indexing finishes.
Auth: user-auth mode, active session; the user must own the app. Errors: 401 not logged in…Re-crawl and re-embed a previously crawled URL by its `urlId`, refreshing the RAG content for that page (legacy user-auth route). Async — the existing source record is updated in place once indexing finishes. Auth: user-auth mode, active session; the user must own the app. Errors: 401 not logged in…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-sources-site-delete-urlprivilégiéRemove a single crawled URL from an app's RAG sources, matched by its exact url string (legacy user-auth route). Deletes the source record and its embeddings; not reversible. Matches on the exact stored URL string.
Auth: user-auth mode, active session; the user must own the app. Errors: 401 not log…Remove a single crawled URL from an app's RAG sources, matched by its exact url string (legacy user-auth route). Deletes the source record and its embeddings; not reversible. Matches on the exact stored URL string. Auth: user-auth mode, active session; the user must own the app. Errors: 401 not log…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-sources-site-delete-records-v1privilégiéBulk-remove crawled URLs (1–100) from an app's RAG sources in one call, matched by exact url strings (legacy owner/admin user-auth route). Deletes each matching source record and its embeddings; not reversible. URLs not present are skipped.
Auth: user-auth mode, active session; the user must own th…Bulk-remove crawled URLs (1–100) from an app's RAG sources in one call, matched by exact url strings (legacy owner/admin user-auth route). Deletes each matching source record and its embeddings; not reversible. URLs not present are skipped. Auth: user-auth mode, active session; the user must own th…
Aucun schéma d’entrée n’a été publié pour cet outil.
ethora-sources-docs-uploadprivilégiéAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-sources-docs-deleteprivilégiéAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-user-loginAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-user-registerAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-listAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-createAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-deleteprivilégiéAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-updateAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-get-default-roomsAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-get-default-rooms-with-app-idAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-create-chatAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-app-delete-chatprivilégiéAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-wallet-get-balanceAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-wallet-erc20-transferAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-b2b-app-createAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-b2b-bot-enableAucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-bot-get-v2Aucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-bot-update-v2Aucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-agents-list-v2Aucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
ethora-agents-get-v2Aucune description publiéeCet outil n’a publié aucune description. Forge n’en invente pas.
20 outils sur 40 ont publié une description.
Les noms et descriptions d’outils sont écrits par l’éditeur et affichés tels quels, comme du texte inerte. Ce sont les chaînes qu’un client MCP transmet à un modèle, alors Forge y recherche des motifs d’injection de prompt — tout constat apparaît avec l’analyse de sécurité ci-dessus. « Privilégié » est une correspondance de mot-clé sur le nom de l’outil, pas un audit de ce qu’il fait : un nom anodin peut tout de même tout faire.
MCP server for the Ethora chat & messaging platform: login, manage apps and chat rooms, broadcast messages, and deploy AI agents / chatbots with RAG sources.
Les noms cliquables ouvrent l’index Forge de toutes les entrées observées exposant cet outil. Parcourir tous les outils indexés.
L'exploration s'est arrêtée à la limite de 60 paquets. Le reste de l'arbre n'a jamais été résolu.
36 autres paquets résolus ne sont pas dessinés ici (limite d'affichage : 24). Toute dépendance porteuse d'un avis de sécurité est dessinée quelle que soit la limite. Inventaire complet (SBOM CycloneDX)
74 dépendances déclarées ne sont jamais arrivées dans l'arbre. Elles manquent à la résolution de Forge, pas au paquet.
+62 de plus non listées. Les comptes par motif ci-dessus les couvrent toutes.
Non suivies : peerDependencies. Cet arbre ne couvre que les dépendances d'exécution ; ce qu'elles entraînent n'a jamais été résolu.