Context7
Up-to-date docs for AI agents
作者提供的说明(英文原文)
Any site's llms.txt: find the covering index, read its linked docs as markdown, search sections.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
适用于网页版、桌面版和手机版 Claude:
https://llmstxtmcp.dev/mcp在终端中运行这条命令
claude mcp add --transport http llms-txt https://llmstxtmcp.dev/mcp粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"llms-txt": {
"url": "https://llmstxtmcp.dev/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"llms-txt": {
"type": "http",
"url": "https://llmstxtmcp.dev/mcp"
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
ChatGPT 只能连接互联网上的服务器:
https://llmstxtmcp.dev/mcp菜单名称可能因套餐和版本不同而略有差异。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
我们还没有读取这个服务器的工具列表;我们会轮流检查各个端点。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 ux-xd 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
尚未检查;我们会轮流检查各个端点
尚未检查;我们会轮流检查各个端点
尚未检查;我们会在检查端点时读取工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于–,最新版本(0.1.1)于2个月前进入注册中心。
支持 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、图片和脚本已被移除。链接会离开本站。
Any site's llms.txt: find the covering index, read its linked docs as markdown, search sections. Remote MCP server over Streamable HTTP at
https://llmstxtmcp.dev/mcp. Free, no API key. Tools:llms_index,llms_page,llms_search. The tool list is fixed per version.
Given any site or page URL, llms_index discovers the llms.txt that covers it (root, redirects, Link: rel="describedby" advertisements, subpath files with most-specific-wins), parses it into the v2 structure (title, summary, H2 sections of title: notes links, the Optional section) and reports every rung it tried, so a miss is as informative as a hit. llms_page returns any linked page as markdown by content negotiation (Accept: text/markdown), rel="alternate" markdown mirrors, the .md / .html.md / index.md conventions, or a bounded HTML-to-markdown conversion, paginated by character offset. llms_search navigates every index this server has parsed so far by section heading, link title and notes. Free, keyless, no account; the server keeps only the parsed indexes it has seen.
Use when: The user needs a product's or library's own documentation and the site may publish llms.txt: call llms_index with the site first, then llms_page on the links it returns. Use llms_page directly when you already hold a docs URL and want it as markdown instead of HTML.
Not for: General web scraping or crawling (one fetch per rung, never link-following), pages behind logins, generating or auditing a site's own llms.txt, or searching the whole web for documentation.
Quick install (Claude Code): claude mcp add --transport http llms-txt https://llmstxtmcp.dev/mcp -s user
Live server: https://llmstxtmcp.dev
| Tool | Purpose | Effects |
|---|---|---|
llms_index | Find and parse the llms.txt that covers a site or page URL: title, summary, H2 sections of title links with notes, the Optional section, and (HEAD-probed only) whether an llms-full.txt exists. Use first, before llms_page, whenever the user needs a product or library's own docs; every rung tried is returned so a miss is diagnosable. | read-only, open-world, idempotent |
llms_page | Return one docs page as markdown, paginated: tries Accept: text/markdown negotiation, the page's rel="alternate" markdown mirror, the .md / .html.md / index.md conventions, then a bounded HTML-to-markdown conversion. Use on the URLs llms_index returns, or on any docs URL you already hold. | read-only, open-world, idempotent |
llms_search | Search the llms.txt indexes this server has parsed (section headings ×3, link titles ×2, notes ×1) and get the matching docs links with their covering index; pass site to search one site (it is indexed on demand). Use to jump straight to the right page of a docs set instead of reading the whole index. | read-only, open-world, idempotent |
Every tool takes task_context: one sentence on what the user is trying to do. It is required.
llms_indexFind and parse the llms.txt that covers a site or page URL: title, summary, H2 sections of title links with notes, the Optional section, and (HEAD-probed only) whether an llms-full.txt exists. Use first, before llms_page, whenever the user needs a product or library's own docs; every rung tried is returned so a miss is diagnosable.
Input schema:
{
"$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "site": { "type": "string", "minLength": 3, "maxLength": 2000, "description": "Site or page URL, e.g. \"docs.stripe.com\" or \"https://hono.dev/docs/\". The most specific covering llms.txt wins." }, "refresh": { "default": false, "description": "Bypass the 24 h cache and fetch again.", "type": "boolean" }, "task_context": { "type": "string", "minLength": 1, "maxLength": 500, "description": "One sentence on what the user is ultimately trying to do (the task this call serves). Required; it tunes the result and is how this free service learns what agents need." } }, "required": [ "site", "refresh", "task_context" ], "additionalProperties": false }
Example arguments:
{
"site": "hono.dev", "task_context": "example: Find and parse the llms.txt that covers a site or page URL: " }
llms_pageReturn one docs page as markdown, paginated: tries Accept: text/markdown negotiation, the page's rel="alternate" markdown mirror, the .md / .html.md / index.md conventions, then a bounded HTML-to-markdown conversion. Use on the URLs llms_index returns, or on any docs URL you already hold.
Input schema:
{
"$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "url": { "type": "string", "maxLength": 2000, "format": "uri", "description": "Page URL (http/https)." }, "max_chars": { "default": 60000, "description": "Characters of markdown to return in this call.", "type": "integer", "minimum": 1000, "maximum": 200000 }, "offset": { "default": 0, "description": "Character offset to continue from (use next_offset from a truncated result).", "type": "integer", "minimum": 0, "maximum": 9007199254740991 }, "task_context": { "type": "string", "minLength": 1, "maxLength": 500, "description": "One sentence on what the user is ultimately trying to do (the task this call serves). Required; it tunes the result and is how this free service learns what agents need." } }, "required": [ "url", "max_chars", "offset", "task_context" ], "additionalProperties": false }
Example arguments:
{
"url": "https://hono.dev/docs/", "task_context": "example: Return one docs page as markdown, paginated: tries Accept: t" }
llms_searchSearch the llms.txt indexes this server has parsed (section headings ×3, link titles ×2, notes ×1) and get the matching docs links with their covering index; pass site to search one site (it is indexed on demand). Use to jump straight to the right page of a docs set instead of reading the whole index.
Input schema:
{
"$schema": "http://json-schema.org/draft-07/schema#", "type": "object", "properties": { "query": { "type": "string", "minLength": 1, "maxLength": 200, "description": "Words to match against section headings, link titles and notes." }, "site": { "description": "Restrict to one site (indexed via llms_index if not yet cached).", "type": "string", "maxLength": 2000 }, "limit": { "default": 10, "type": "integer", "minimum": 1, "maximum": 50 }, "max_bytes": { "default": 200000, "description": "Byte cap on the results array.", "type": "integer", "minimum": 10000, "maximum": 500000 }, "task_context": { "type": "string", "minLength": 1, "maxLength": 500, "description": "One sentence on what the user is ultimately trying to do (the task this call serves). Required; it tunes the result and is how this free service learns what agents need." } }, "required": [ "query", "limit", "max_bytes", "task_context" ], "additionalProperties": false }
Example arguments:
{
"query": "middleware", "site": "hono.dev", "task_context": "example: Search the llms.txt indexes this server has parsed (section " }
Endpoint: https://llmstxtmcp.dev/mcp (Streamable HTTP, MCP 2026-07-28 with 2025-era fallback). Authentication: none.
claude mcp add --transport http llms-txt https://llmstxtmcp.dev/mcp -s user
{
"mcpServers": { "llms-txt": { "url": "https://llmstxtmcp.dev/mcp" } } }
{
"servers": { "llms-txt": { "type": "http", "url": "https://llmstxtmcp.dev/mcp" } } }
or code --add-mcp '{"name":"llms-txt","type":"http","url":"https://llmstxtmcp.dev/mcp"}'
Settings → Connectors → Add custom connector → URL https://llmstxtmcp.dev/mcp, Authentication: None.
Settings → Connectors → Add custom connector → https://llmstxtmcp.dev/mcp. Desktop app / Codex share ~/.codex/config.toml:
[mcp_servers.llms-txt]
url = "https://llmstxtmcp.dev/mcp"
[mcp_servers.llms-txt]
url = "https://llmstxtmcp.dev/mcp"
gemini mcp add --transport http llms-txt https://llmstxtmcp.dev/mcp -s user
(settings.json uses httpUrl, not url.)
{
"mcpServers": { "llms-txt": { "serverUrl": "https://llmstxtmcp.dev/mcp" } } }
{
"mcpServers": { "llms-txt": { "type": "streamableHttp", "url": "https://llmstxtmcp.dev/mcp" } } }
name: llms-txt
mcpServers:
{
"context_servers": { "llms-txt": { "source": "custom", "command": "npx", "args": [ "-y", "mcp-remote", "https://llmstxtmcp.dev/mcp" ] } } }
Streamable HTTP endpoint: https://llmstxtmcp.dev/mcp
{
"mcpServers": { "llms-txt": { "url": "https://llmstxtmcp.dev/mcp" } } }
This page documents a server. It does not ask the reader to change any rules file, memory file, or host configuration.
npm install && npm start # http://127.0.0.1:8080/mcp
docker compose up -d --build # same, in a container node scripts/smoke.mjs http://127.0.0.1:8080 llms_index '{}'
Built with the MCP server kit (kit/): Streamable HTTP MCP plus agent-readable docs (llms.txt, server.json, install pages, a REST twin), all from one manifest (servers/llms-txt/mcp.factory.json). This repo is the server logic only; no telemetry is collected or sent by this code. MIT.