CometChat Docs

io.github.cometchat由 GitHub 账号 cometchat 发布v0.1.7更新于 Oct 29, 2026

CometChat docs search + implementation bundles: add chat, voice, video & moderation to your app.

已验证Streamable HTTP可网页运行知识与记忆开发者工具

概览

AI 生成的概览

只读的 CometChat 文档服务器,让助手搜索文档、读取页面并获取实现方案,用于在应用中集成聊天、语音、视频与内容审核。

可以做什么
  • 按主题、API 名称或错误信息搜索 CometChat 文档,返回带页面链接的排序摘录
  • 按 URL 或路径以 markdown 完整读取单个文档页面,自动跟随已迁移页面,超长页面会被截断
  • 列出所有可用的实现方案包,包含标识、标题、框架和最近核对日期
  • 获取某个场景的实现方案包,例如 React、Flutter、iOS 或 Android UI Kit 快速上手、内容审核、多租户聊天或在线状态,汇编为一份含前置条件和相关页面的 markdown 文档
适用场景
当助手协助在网页或移动应用中集成 CometChat 的聊天、音视频通话或内容审核,需要最新的一手文档和分步集成方案时使用。编写集成代码时查询 API 细节、错误码和速率限制也适用。
运行要求
一个基于 Streamable HTTP 的远程 MCP 端点,无需账号、API 密钥或身份验证。若要真正使用助手生成的代码,还需另行注册 CometChat 账号并取得 App ID、Auth Key 和 Region。
安装前请注意
该服务器为只读,仅提供公开文档,不会自行改动你的项目;代码由助手写入你的文件。IP 地址等常规请求元数据可能被短暂处理用于限流。注册 CometChat 是独立步骤,适用其自身条款,免费额度为前 100 个月活用户。

安装

在 SourceWeft 中

  1. 打开 控制台中的 CometChat Docs,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.cometchat%2Fdocs-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "cometchat-docs": {
      "type": "http",
      "url": "https://mcp.cometchat.com/mcp"
    }
  }
}

README

CometChat MCP Server

Add real-time chat, voice, video, and moderation to your app through your AI coding agent.

[CI] [Release] [MCP Registry] [LightNow capabilities] [docs-mcp MCP server] [Listed on ClaudePluginHub] [License] [MCP] [Status]

Docs • CometChat • Get an account (free, 100 MAU)


CometChat's first-party MCP server. Connect Claude, Cursor, Windsurf, VS Code Copilot, Codex, or any other Model Context Protocol–compatible agent and integrate CometChat into your app from natural-language prompts.

Ask the agent: "add a chat tab where users can DM each other" — it reads CometChat's documentation, picks the right components for your stack, and writes the integration code.

Read-only. No account, no API key, no authentication required.


Demo

[CometChat MCP server in action]

An AI agent reading CometChat's docs and writing a working chat integration from a single prompt.


Quick install

AgentHow to add
Claude.ai / Claude DesktopSettings → Connectors → Add custom connector → URL: https://mcp.cometchat.com/mcp
CursorCmd+Shift+P → Open MCP settings → Add custom MCP → paste config below
WindsurfPlugins (hammer icon) → Manage plugins → View raw config → paste config below
VS Code (Copilot Agent)Cmd+Shift+P → MCP: Add MCP Server → URL: https://mcp.cometchat.com/mcp, Transport: HTTP
Claude Code (CLI)claude mcp add --transport http cometchat https://mcp.cometchat.com/mcp
Claude Code (plugin)claude plugin marketplace add cometchat/docs-mcp && claude plugin install cometchat@cometchat
Codex CLI (plugin)codex plugin marketplace add cometchat/docs-mcp && codex plugin add cometchat@cometchat

Config snippet (Cursor / Windsurf / generic MCP clients)

json
{  "mcpServers": {    "cometchat": {      "url": "https://mcp.cometchat.com/mcp"    }  }}

Usage

After connecting, prompt your agent with any of these:

  • "How do I install the React UI Kit in my Vite project?"
  • "Walk me through multi-tenant chat for a Next.js SaaS where workspaces are isolated."
  • "Show me how to add presence indicators and typing dots to my iOS conversation list."
  • "Set up content moderation so banned words are blocked before delivery."
  • "Build a no-code chat widget for my Webflow site."
  • "What's the rate limit for sending messages, and what error code do I get when I hit it?"

The agent reads CometChat's documentation, pulls the relevant implementation bundle, and writes the integration code into your project.


Tools

  • search_cometchat_docs — Search the SDK, UI Kit, Calls, REST API, AI agent, notification and moderation docs by topic, API name or error message. Returns ranked snippets with page URLs, current versions first. Optional version filter and limit (up to 25).
  • fetch_cometchat_doc_page — Fetch one documentation page in full as markdown by URL or path, following moved pages. Pages over 50 KiB are truncated with a link to the full page.
  • get_cometchat_implementation_bundle — Return the implementation bundle for a named scenario: the scenario's current docs pages (for a UI Kit: its integration guide, then the platform's AI reference page) compiled into one document, plus related page paths.
  • list_cometchat_bundles — List every available implementation bundle (identifier, title, framework, date its page list was reviewed) for discovery.

All four carry readOnlyHint: true, a title annotation, and a declared outputSchema with structured results. Names are ≤ 64 characters. Each description states what the tool does, when it fits and its limits (errors, rate limit), naming this server's other tools only where one serves a specific need ("identifiers come from list_cometchat_bundles"). They carry no directives to the agent, no references to other servers or products, and no marketing language. tests/tools.test.ts guards the tool, parameter and output-field descriptions and the initialize instructions against a list of banned phrasings, and checks that list still rejects the shapes it was written for; it is a banlist, not a proof.

Resources

URIPurpose
cometchat://skills/overviewAgent orientation skill — Product summary, decision guidance, workflow, common gotchas, verification checklist
cometchat://bundles/react-uikit-quickstartReact UI Kit install + init + login + chat surface
cometchat://bundles/react-native-uikit-quickstartReact Native UI Kit with navigation and chat screen
cometchat://bundles/flutter-uikit-quickstartFlutter UI Kit install + init + basic chat
cometchat://bundles/ios-uikit-quickstartiOS UI Kit install + chat view
cometchat://bundles/android-uikit-quickstartAndroid UI Kit install + chat screen
cometchat://bundles/angular-uikit-quickstartAngular UI Kit install + init + login + chat surface
cometchat://bundles/js-sdk-messaging-basicsVanilla JS SDK — send/receive text and media messages
cometchat://bundles/widget-embedNo-code widget embed for HTML, with pointers to WordPress, Webflow and Squarespace
cometchat://bundles/moderation-setupModeration getting started, with pointers to rules, lists and flagged messages
cometchat://bundles/multi-tenant-chatMulti-tenancy — isolated apps under one plan, App Management APIs
cometchat://bundles/presence-and-typingOnline presence, typing indicators, read receipts

How it works

  1. You prompt your agent in natural language.
  2. The agent reads the orientation skill (cometchat://skills/overview) to understand which tool/bundle fits your request.
  3. For top scenarios, the agent pulls an implementation bundle — the current docs pages for that integration in one document.
  4. For long-tail questions, the agent searches CometChat's docs and reads specific reference pages.
  5. The agent writes the code into your project, using the bundle as the source of truth and your project structure as the constraint.

CometChat in 30 seconds

CometChat is a real-time communications platform for adding chat, voice, and video calling to web and mobile apps. Used in production across SaaS, marketplaces, gaming, healthcare, education, and creator platforms.

  • Free tier: first 100 monthly active users, no credit card required.
  • SDKs: JavaScript, React Native, iOS, Android, Flutter.
  • UI Kits: React, React Native, iOS, Android, Flutter, Angular, Vue.
  • No-code: chat widget for any HTML site.
  • Sign up: app.cometchat.com — you'll need an App ID, Auth Key, and Region to build with the code the agent writes.

Server identity

FieldValue
Display nameCometChat Docs
Version0.1.7
ProtocolMCP 2025-11-25; earlier protocol versions are negotiated down
TransportStreamable HTTP (with SSE)
AuthenticationNone (public docs only)
Capabilitiestools, resources
Health endpointGET https://mcp.cometchat.com/health

Architecture

Your agent (Claude / Cursor / Windsurf / …)        ↓ MCP over Streamable HTTP        ↓  mcp.cometchat.com/mcp  (this server)        ↓  ├── search_cometchat_docs     → SQLite FTS5 index of cometchat/docs  ├── fetch_cometchat_doc_page  → cometchat.com/docs/*.md (first-party)  └── get_cometchat_implementation_bundle → live docs pages listed in src/bundles/manifest.ts
  • Stateless server, single universal endpoint, no user-specific state.
  • Search index rebuilds from github.com/cometchat/docs on every push to that repo's main branch.
  • Implementation bundles have no content of their own. Each is a list of docs pages (src/bundles/manifest.ts), read from the live docs on request, so a docs fix reaches the bundle with no MCP change. A built bundle is served for 10 minutes; after that a call still gets it at once and starts one background rebuild. A rebuild that hits a timeout or 5xx never replaces the cached bundle and is retried with a backoff (30 s, doubling, up to 10 minutes), so a docs outage neither drops bundles nor floods the docs site. A deleted page (404) is what the docs say: once a second build in a row agrees, that rebuild is kept and names the missing page. npm run verify:bundles fails when a listed page moves, disappears, no longer fits in its bundle, is no longer the current version in docs.json, or tells people to install a package version that is unpublished, on an older major, or an exact pin a minor behind (checked against npm, pub.dev, CometChat's Maven repo, CocoaPods trunk and GitHub); the maintainers run it daily.

Local development

bash
# Clone the docs repo (used to build the search index)git clone --depth 1 https://github.com/cometchat/docs.git ../cometchat-docs-repo
# Install + build the FTS index + run the servernpm installDOCS_REPO=../cometchat-docs-repo npm run build:indexnpm run dev
# Run the test suite (vitest: validation, truncation, bundles, tools, resources, fetch,#  search ranking and the index builder)npm test
# Score search ranking on the index you built (CI pins the docs commit: see DEPLOY.md)DOCS_REPO=../cometchat-docs-repo npm run eval:search
# Check every docs page a bundle lists still exists and is current (network)npm run verify:bundles

The server listens on http://0.0.0.0:3000 by default. Health probe at GET /health, MCP endpoint at POST /mcp.

Inspect with the MCP Inspector

bash
npx @modelcontextprotocol/inspector# add server: http://localhost:3000/mcp

You should see all 4 tools with readOnlyHint: true and all 11 resources.

Repo layout

docs-mcp/├── src/│   ├── server.ts                  # MCP server entry, transport, tool dispatch│   ├── tools/{search,fetch,bundle}.ts│   ├── search/sqlite.ts           # SQLite FTS5 client│   ├── bundles/manifest.ts        # each bundle's docs pages│   ├── bundles/loader.ts          # compiles bundles from live docs pages│   ├── resources/registry.ts      # skill + bundle resources│   └── lib/{errors,truncate,validation,logger}.ts├── scripts/build-index.ts         # builds SQLite FTS5 index from cometchat/docs├── skills/overview.md             # agent orientation skill├── tests/                         # vitest suite├── .claude-plugin/│   ├── plugin.json                # Claude Code plugin manifest│   └── marketplace.json           # Claude Code marketplace manifest├── .codex-plugin/plugin.json      # Codex plugin manifest├── .cursor-plugin/plugin.json     # Cursor Marketplace manifest├── .mcp.json                      # MCP config (Claude Code auto-discovery)├── mcp.json                       # Open Plugins standard manifest└── assets/logo.svg                # CometChat logo

Configuration

Env varDefaultNotes
PORT3000HTTP port
HOST0.0.0.0Bind host
DOCS_BASE_URLhttps://www.cometchat.com/docsUsed for URLs in responses + the .md fetch fallback
INDEX_PATH./data/index.sqliteSQLite FTS5 index location. Server still boots if missing; search returns backend_unavailable and /health is 503.
SKILLS_DIR./skillsOrientation skill (overview.md) directory
FETCH_TIMEOUT_MS5000Per-fetch HTTP timeout
LOG_LEVELinfodebug / info / warn / error
NODE_ENVdevelopmentStandard Node.js setting (Express runs in production mode); set production in containers
ALLOWED_HOSTS<HOST>:<PORT>,localhost:<PORT>,127.0.0.1:<PORT>Comma-separated Host header allowlist for DNS-rebinding protection
ALLOWED_ORIGINSunsetComma-separated browser Origin allowlist for /mcp. Unset allows none: a request with an Origin gets 403. Clients that send no Origin (IDEs, CLIs, hosted connectors) are unaffected
DNS_REBINDING_PROTECTIONtrueSet false only if an upstream already validates Host
RATE_LIMIT_ENABLEDtrueSet false to disable per-IP rate limiting on /mcp. Exactly true or false; other values fail startup
RATE_LIMIT_MAX120Max requests per window per IP. Positive integer; 0 fails startup (disable with RATE_LIMIT_ENABLED=false)
RATE_LIMIT_WINDOW_MS60000Rate-limit window in ms. Positive integer
INDEX_AUTO_REFRESHfalseSet true to rebuild the search index in-container when cometchat/docs changes. Requires git in the image and a writable INDEX_WORK_DIR.
INDEX_POLL_INTERVAL_MS600000How often to check the docs repo for a new commit (a git ls-remote, ~1s)
INDEX_WORK_DIR./data/generationsWhere rebuilt index generations are written (tmpfs in production)
INDEX_KEEP_GENERATIONS2Previous index generations retained on disk for instant fallback
INDEX_MIN_PAGES2000Absolute floor: a candidate index with fewer pages is rejected
INDEX_MAX_DROP_RATIO0.2Relative floor: reject a candidate losing more than this fraction of the served page count, or of the served pages whose versions come from docs.json navigation
DOCS_REPO_URLhttps://github.com/cometchat/docs.gitPublic docs repo; cloned anonymously, no credentials
DOCS_REFmainBranch to follow
DOCS_COMMIT_PINunsetFreeze on one commit and stop following HEAD (incident escape hatch)
POSTHOG_KEYunsetPostHog project API key. Unset = usage analytics fully disabled (no-op)
POSTHOG_HOSThttps://us.i.posthog.comPostHog instance host
ANALYTICS_SALTunsetRequired when POSTHOG_KEY is set (analytics stays off without it). Salts client fingerprints/IP hashes; rotating it resets all fingerprints

Deployment

See DEPLOY.md for container build, environment, and platform notes.


Marketplaces

The same server URL is listed in these registries and directories:


Support

  • Issues / feedback: open an issue in this repo.
  • CometChat support: [email protected].
  • Live MCP status: curl https://mcp.cometchat.com/health returns {"status":"ok"} when healthy.

Contributing

PRs welcome — especially:

  • New implementation bundles: add an entry to src/bundles/manifest.ts listing existing docs pages. If no page covers the scenario, write the page in cometchat/docs first; bundle content always comes from the docs.
  • Tool improvements behind the existing read-only contract.

Out of scope today:

  • Tools that write to a customer's CometChat app (separate authenticated connector, on the roadmap).
  • Mixed read/write tools (Anthropic auto-rejection rule).

Privacy

The CometChat MCP server is read-only and requires no account, API key, or authentication. It serves only CometChat's public documentation and does not request, store, or transmit your code, prompts, or personal data. Standard request metadata (such as IP address) may be processed transiently for rate limiting and abuse prevention.

For full details, see CometChat's privacy policy: cometchat.com/legal-privacy-policy.


License

Apache-2.0. See LICENSE.

来源:README.md,提交 804b54c

工具

4

search_cometchat_docs

Search CometChat Documentation

Searches all of CometChat's documentation (SDKs, UI Kits, Calls, REST API, AI agents, notifications, moderation, the no-code widget, UI Kit Builder and more) for the pages covering a topic or API name, and returns ranked excerpts with each page's url. When a page's url or path is already in hand, fetch_cometchat_doc_page returns that page in full; for a common setup scenario (a UI Kit quickstart, SDK messaging, the widget, moderation), list_cometchat_bundles names the implementation bundles, each the scenario's current docs pages compiled into one document. Pages holding every keyword rank first, falling back to any keyword when no page holds them all; no match is an empty results list, not an error. For a query of 4 to 8 distinct keywords, pages missing one incidental keyword join the ranking at half weight, which is how an API renamed between versions is still found; a platform or language word is never the one dropped. Without the version filter, current-version pages lead, and each result reports isCurrent plus a version label when the page is versioned; the filter restricts results to pages carrying that label, so unversioned pages such as the REST API reference are excluded. limit caps the rows returned, never the totalAvailable count, and there is no offset. Results come from a snapshot of the documentation repository, rebuilt periodically, so a page published since the last rebuild is missing until then; fetch_cometchat_doc_page reads the live site. Errors: invalid_input for a malformed argument, backend_unavailable when the index cannot be read. Over HTTP, every MCP request counts against one per-client-IP limit, initialize and tools/list included, by default 120 per 60 s, then HTTP 429 with Retry-After; no authentication.

输入参数limitquery必填version

fetch_cometchat_doc_page

Fetch CometChat Documentation Page

Returns one CometChat documentation page in full, as markdown with its title, url and section. Takes a url or path already in hand: a docs link from a bundle, or a result url from search_cometchat_docs, which is where a topic or API name goes instead, since that is not a path. Each call reads the live docs site, so it sees pages the search index has not picked up yet. A moved page is followed for up to 3 redirects; a page over 50 KiB is truncated, ending in a link to the full page. No key or account is needed, and nothing is cached. Errors: not_found for an unknown page or one redirected to the docs root, invalid_input for a path resolving outside the documentation, backend_unavailable when the site fails or the whole redirect chain exceeds the 5 s default timeout (retryable).

输入参数path必填

get_cometchat_implementation_bundle

Get a CometChat Implementation Bundle

Returns one CometChat implementation bundle: the scenario's current documentation pages (for a UI Kit, its integration guide, then the platform's AI reference page) compiled into one markdown document, each headed by its source URL, plus paths of related pages, the prerequisites, and a last_verified date. Eleven bundles cover UI Kit quickstarts (React, Angular, React Native, Flutter, iOS, Android), JavaScript SDK messaging, the no-code widget, moderation setup, multi-tenant chat, and presence and typing. list_cometchat_bundles names them all; for a topic no bundle covers, or for one reference page rather than a setup's pages, search_cometchat_docs searches the documentation. bundle is an identifier, not a title and not a framework: 'react-uikit-quickstart', rather than 'React UI Kit' or 'react'. One that is well-formed but names no bundle returns unknown_bundle listing every valid one; anything else, invalid_input. Pages are included whole, in order, while the document fits in 60 KiB; a page that does not fit is listed by path under More pages rather than cut, except a first page too big on its own, which is cut at a paragraph and ends with a link to the full page. Pages are read from the live docs site; no key or account is needed. A built bundle is served for 10 minutes, then refreshed in the background. A page that cannot be loaded does not fail the call: the previous bundle, or a partial one naming the pages it lacks, is served instead, and backend_unavailable is returned only when no page loads and nothing is cached yet.

输入参数bundle必填

list_cometchat_bundles

List CometChat Implementation Bundles

Lists every CometChat implementation bundle: the setup scenarios whose current docs pages get_cometchat_implementation_bundle compiles by identifier, with each one's title, framework ('any' when platform-neutral) and last_verified date. No parameters are required: one call returns the complete set, ordered by identifier, with no filter, paging or cap. The set is fixed at startup, since only page content is read from the docs site; the listing itself opens no connection and needs no key or account, so repeat calls return the same bundles. For a topic no bundle covers, or for one reference page rather than a setup's pages, search_cometchat_docs searches the documentation.

无需输入参数。

版本历史

3
  1. v0.1.7最新Oct 29, 2026
  2. v0.1.6Sep 22, 2026
  3. v0.1.5Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分