Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Fleet discovery for the cyanheads MCP ecosystem — semantic search + install snippets.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
MCP_LOG_LEVEL, CATALOG_URL, CATALOG_FETCH_TIMEOUT_MS, CATALOG_REFRESH_SECONDS, EMBEDDING_MODEL_ID, SIMILARITY_FLOOR你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://cyanheads.caseyjhand.com/mcp打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"cyanheads": {
"command": "npx",
"args": [
"-y",
"@cyanheads/cyanheads-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"CATALOG_URL": "your-value",
"CATALOG_FETCH_TIMEOUT_MS": "your-value",
"CATALOG_REFRESH_SECONDS": "your-value",
"EMBEDDING_MODEL_ID": "your-value",
"SIMILARITY_FLOOR": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add --transport http cyanheads https://cyanheads.caseyjhand.com/mcpclaude mcp add cyanheads --env MCP_LOG_LEVEL=your-value --env CATALOG_URL=your-value --env CATALOG_FETCH_TIMEOUT_MS=your-value --env CATALOG_REFRESH_SECONDS=your-value --env EMBEDDING_MODEL_ID=your-value --env SIMILARITY_FLOOR=your-value -- npx -y @cyanheads/cyanheads-mcp-server运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"cyanheads": {
"url": "https://cyanheads.caseyjhand.com/mcp"
}
}
}粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"cyanheads": {
"command": "npx",
"args": [
"-y",
"@cyanheads/cyanheads-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"CATALOG_URL": "your-value",
"CATALOG_FETCH_TIMEOUT_MS": "your-value",
"CATALOG_REFRESH_SECONDS": "your-value",
"EMBEDDING_MODEL_ID": "your-value",
"SIMILARITY_FLOOR": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"cyanheads": {
"type": "http",
"url": "https://cyanheads.caseyjhand.com/mcp"
}
}
}粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"cyanheads": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@cyanheads/cyanheads-mcp-server"
],
"env": {
"MCP_LOG_LEVEL": "your-value",
"CATALOG_URL": "your-value",
"CATALOG_FETCH_TIMEOUT_MS": "your-value",
"CATALOG_REFRESH_SECONDS": "your-value",
"EMBEDDING_MODEL_ID": "your-value",
"SIMILARITY_FLOOR": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://cyanheads.caseyjhand.com/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
MCP_LOG_LEVEL envCATALOG_URL envCATALOG_FETCH_TIMEOUT_MS envCATALOG_REFRESH_SECONDS envEMBEDDING_MODEL_ID envSIMILARITY_FLOOR env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
工具名称和描述与服务器在 2026年11月7日 报告的完全一致。这些内容由作者撰写,不是我们写的;我们以纯文本形式显示。
cyanheads_search_catalogSearch fleet tools and servers by natural-language description. Returns ranked matches with brief summaries and the server each tool belongs to. Use scope "servers" to find which server handles a workflow; use the default scope "tools" to find specific tools.
cyanheads_describe_entryReturn the description and install snippets for a named tool or server. For tools: the description, owning server, and connection metadata. For either kind: local (stdio, via npx) install snippets for every published server, plus remote (HTTP) connection snippets when a hosted en
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 cyanheads 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
在 250 毫秒内响应(HTTP 200)
无需登录
已读取 2 个工具描述,未发现针对 AI 的隐藏指令
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 3 项适用的基础检查中通过了 3 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
两种方式都可以:安装在你的电脑上,或者连接云端版本。
GitHub 仓库最后更新于–,最新版本(0.5.0)于9天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,所以接受远程 MCP 服务器的应用也可以使用,例如开启开发者模式的 ChatGPT。
同一分类中有:Context7, Codebase Memory, Exa
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
@cyanheads/cyanheads-mcp-server Fleet discovery for the cyanheads MCP ecosystem — semantic search + install snippets. 2 Tools • 0 Resources • 0 Prompts
Public Hosted Server: https://cyanheads.caseyjhand.com/mcp
Find the right MCP tool for the job across the cyanheads fleet. Describe a task in plain language to search every tool and server, then get a description, connection URL, and install snippet for your client.
| Tool | Description |
|---|---|
cyanheads_search_catalog | Search fleet tools and servers by natural-language query. Returns ranked matches with brief summaries and the owning server. |
cyanheads_describe_entry | Return the description, connection URL, and per-client install snippet for a named tool or server. |
| Skill | Description |
|---|---|
cyanheads-guide | Find a fleet server for a task and hand over a working install: telling real matches from near misses, the category filter, hosted vs local installs, and env vars the snippets leave out. Served over MCP as skill://cyanheads-guide/SKILL.md and loaded by Claude Code and Codex plugin installs. |
cyanheads_search_catalog toolquery 1–500 raw characters, with non-whitespace text required; surrounding whitespace is trimmed before embedding and echo. scope selects tools (default) or servers; optional category: research, government, public-data, utility; limit 1–1000 (default 5), served at most 20 per call: when a larger limit leaves matches past the page, the response adds truncated, shown, cap, and a notice naming the offset to continue from.score ([0, 1], comparable within one response). Tool searches include a servers roll-up with ten entries per page and serversTotal; an unloaded catalog returns retryable catalog_empty.offset and the tools-scope roll-up independently with serversOffset (both default to 0). Reuse the same query, scope, category, and limit with nextOffset / nextServersOffset; null means exhausted. Each call uses the current catalog, so a refresh between pages can change ordering. Servers scope requires serversOffset: 0 and omits roll-up fields.SIMILARITY_FLOOR (default 0.3) filters matches before the limit applies.category string is treated as omitted; other unknown category values are rejected. Categories are catalog labels, not publisher types, and a wrong one drops the matching server without a notice unless nothing else matches.cyanheads_describe_entry toolname 1–64 characters accepts a tool or server name, auto-detected or pinned via kind. Exact names win, then unique case-insensitive names; output uses canonical names. client optionally selects claude-code, cline, codex, cursor, gemini, streamable-http (generic mcpServers JSON), or curl.server (optional, 1–64 characters) names the owning server: a search result's name + server describes exactly that row, in either scope. It is required when more than one server owns the tool name; with a server name, it must name the same server.kind, client, and server strings are treated as omitted. Other unknown kind or client values are rejected.client: "curl" returns successful metadata with an installNotice naming a stdio client to try. Required environment variables remain visible even without snippets; they list what the server's manifest marks required, so a key it leaves optional is absent.tools/list.not_found, ambiguous_kind (set kind), ambiguous_owner (set server; the error lists the owners), or retryable catalog_empty.Built on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.
Catalog-specific:
CATALOG_REFRESH_SECONDS, default 3600) with an atomic index swap when generatedAt changes — no restart needed@huggingface/transformers; document embeddings are pre-computed, L2-normalized, and Matryoshka-truncated, shipped inside fleet.json. The server normalizes each document vector again at load, so scores stay cosine similarities even when a catalog's vectors drift from unit length, and a bounded warning names vectors more than 1e-4 off.fetch — avoids a cold-cache model-load failure under OTELcyanheads_describe_entry resolves this server's own name and tools from a static fallback record, consulted only when the remote catalog doesn't carry an entry for itCATALOG_URL can point at any endpoint serving the same schema, to front a custom fleetAgent-friendly output:
limit above 20 is cut to the per-call capresult.kind (tool | server) on cyanheads_describe_entry lets callers branch on data, not string parsingscore field for trust calibration, plus a servers roll-up so agents can see which servers matched without a second callConnect to the hosted instance, no install:
claude mcp add --transport http cyanheads-mcp-server https://cyanheads.caseyjhand.com/mcp
Or run it locally:
claude mcp add cyanheads-mcp-server -- npx -y @cyanheads/cyanheads-mcp-server
For other clients, add this to the MCP config file:
{
"mcpServers": { "cyanheads-mcp-server": { "command": "npx", "args": ["-y", "@cyanheads/cyanheads-mcp-server"] } } }
The Claude Desktop bundle (the install badge above) runs the embedding model on ONNX WebAssembly, so it needs no platform-specific native libraries; npm and Docker installs use native CPU inference. Either way, the first start downloads the embedding model and later starts reuse the model cache. For Docker or a source build, see Running the server.
All configuration is validated at startup via Zod schemas in src/config/server-config.ts. Every variable has a sensible default — out of the box, the server points at the canonical cyanheads fleet.
| Variable | Description | Default |
|---|---|---|
MCP_TRANSPORT_TYPE | Transport: stdio or http | stdio |
MCP_HTTP_PORT | HTTP server port | 3010 |
MCP_HTTP_HOST | HTTP server bind host | 127.0.0.1 |
MCP_HTTP_ENDPOINT_PATH | HTTP endpoint path where the MCP server is mounted | /mcp |
MCP_AUTH_MODE | Authentication: none, jwt, or oauth | none |
MCP_SESSION_MODE | HTTP session posture: auto, stateful, or stateless. src/index.ts declares stateless; set this only to override it. | stateless |
MCP_LOG_LEVEL | Log level (debug, info, warning, error, etc.) | info |
CATALOG_URL | Remote fleet.json endpoint (schema v2 with baked embeddings). Must be an absolute URL. Override to front your own fleet. | https://caseyjhand.com/fleet.json |
CATALOG_FETCH_TIMEOUT_MS | Per-request timeout for fleet.json fetches: integer milliseconds, 1–2147483647. | 10000 |
CATALOG_REFRESH_SECONDS | Background poll interval for fleet.json refresh. 0 disables; positive values up to 2147483.647 seconds use the runtime's millisecond timer resolution. | 3600 |
EMBEDDING_MODEL_ID | Hugging Face model id for query embedding. Must match fleet.json.embeddingModel. | Snowflake/snowflake-arctic-embed-m-v1.5 |
SIMILARITY_FLOOR | Cosine similarity cutoff for cyanheads_search_catalog results. Must be within [0, 1]. | 0.3 |
OTEL_ENABLED | Enable OpenTelemetry | false |
OTEL_EXPORTER_OTLP_ENDPOINT | OTLP base URL for traces and metrics | Unset |
OTEL_EXPORTER_OTLP_LOGS_ENDPOINT | Explicit OTLP logs URL; requires the OTel log peers included in the default Docker build | Unset |
LOG_TOOL_FAILURE_PAYLOADS | Log failed arguments and results, redacted by key name. Secrets inside free-form values are not redacted. | false |
LOG_TOOL_FAILURE_PAYLOAD_MAX_BYTES | UTF-8 byte cap for each logged failure payload | 16384 |
See .env.example for the full list of optional overrides.
Requires Bun v1.4.0 or higher (or Node.js v24+).
git clone https://github.com/cyanheads/cyanheads-mcp-server.git
cd cyanheads-mcp-server && bun install cp .env.example .env # every variable has a default; override as needed
# One-time build
bun run rebuild
bun run start:http
bun run start:
只显示了开头部分;其余内容请在仓库中阅读