Token导航 LogoToken导航TokenDH.com
Llms Txt Kit logo
搜索检索未说明官方级别未说明来源级核验

Llms Txt Kit

MCP Server

一个用于解析、验证、缓存和生成LLM就绪内容的C#/.NET库和MCP服务器,专为处理llms.txt标准设计。

工具数

5

提示词数

0

GitHub Stars

1

资源数

0
C#Claude搜索Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

southpawriter02

提供方

southpawriter02

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

LlmsTxtKit

C#/。NET库和MCP服务器,用于llms.txt软件内容检索、解析、验证和缓存。

![License: MIT](https://opensource.org/licenses/MIT) ![.NET](https://dotnet.microsoft.com/)

______________________________________________________________________

这是什么

LlmsTxtKit是第一个(也是目前唯一的)。NET工具的实现 /llms.txt 标准 --杰里米·霍华德提出的公约 回答。人工智能 这有助于人工智能系统从网站上发现和检索干净、精心策划的Markdown内容。图书馆提供一切。NET开发人员需要以编程方式处理llms.txt文件:将它们解析为强类型对象,使用基础设施感知的重试逻辑获取它们,根据规范验证它们,缓存结果以避免冲击源服务器,并从其内容生成LLM就绪的上下文字符串。

它还作为MCP(模型上下文协议)服务器发布,这意味着任何支持MCP的AI代理——Claude、GitHub Copilot或任何基于MCP标准构建的自定义代理——都可以使用LlmsTxtKit作为工具,在推理时发现和检索llms.txt-cuoted内容。这很重要,因为它实现了llms.txt规范所设计的实时检索工作流程,但没有主要的LLM平台本机构建。

______________________________________________________________________

为什么存在

这个。NET生态系统差距

所有现有的llms.txt工具都是用Python或JavaScript编写的。官方 llms_txt Python模块 处理解析和上下文生成。JavaScript等价物反映了它。Docusaurus和VitePress插件从文档网站生成llms.txt文件。甚至在PHP和Drupal中也有实现。

但为了。NET开发人员——基于ASP。NET Core、Azure、ExpressRoute和更广泛的微软生态系统——什么都没有。NuGet上没有包。没有解析器。没有验证器。没有MCP服务器。如果你正在构建一个集成的人工智能。NET应用程序,如果你想使用llms.txt,你必须从头开始或shell到Python进程编写所有内容。LlmsTxtKit用下面的原生、惯用的C#实现填补了这一空白。NET规范,使用适当的依赖注入,并随附每个公共类型和方法的XML文档。

基础设施问题

llms.txt规范听起来很简单:从已知的URL获取Markdown文件,解析它,按照链接进行操作。在实践中,网络的安全基础设施使这一点变得异常困难。大约20%的公共网站支持Cloudflare,Cloudflare于2025年7月开始默认阻止新域名上的AI爬虫。AI风格的HTTP请求——那些没有JavaScript执行、没有Cookie、来自数据中心IP、有非浏览器用户代理的请求——会触发Web应用程序防火墙(WAF)启发式算法,返回403个Forbidden响应而不是内容。

LlmsTxtKit的构建考虑到了这一现实。它的获取层不仅仅是发出HTTP请求并希望最好。它产生结构化 FetchResult 对象,用于区分“文件已找到”、“文件找不到”、“被WAF阻止”、“速率受限”、“DNS故障”、“超时”和其他结果。调用代码可以获取所需的信息,以便对回退策略做出明智的决策,库的缓存层可以确保在获取时 *做* 如果成功,结果将被保留,因此您不会在每个请求上都进行相同的WAF战斗。

信任差距

在平台层面采用llms.txt最被低估的障碍之一是缺乏信任机制。因为llms.txt内容与它描述的HTML是分开维护的,所以没有内置的方法来验证Markdown是否与实时页面匹配,或者检测它何时过时。谷歌的John Mueller将llms.txt与不可信的关键字元标签进行了比较,正是出于这个原因——没有验证,它是自我报告的元数据,没有问责制。

LlmsTxtKit的验证系统直接解决了这个问题。这 ValidationReport 检查结构是否符合规范,验证链接的URL是否实际解析,并可选择检查Last Modified标头和内容哈希以标记新鲜度问题。它并没有完全解决信任问题——这需要平台级采用验证机制——但它为开发人员和人工智能代理提供了一种结构化的方法,在使用llms.txt内容之前评估其可信度。这是任何现有工具所提供的一步,其设计目的是随着生态系统的成熟,可以添加未来的信任机制(内容签名、注册表验证等)。

______________________________________________________________________

包裹

LlmsTxtKit作为两个不同的NuGet包提供。你可以单独使用,也可以一起使用。

LlmsTxtKit。核心

独立图书馆。当您想直接在自己的文件中使用llms.txt文件时,请使用此选项。NET应用程序——解析、获取、验证、缓存和生成上下文。无MCP依赖性。没有服务器基础设施。只是一个你用代码调用的库。

LlmsTxtKit 。麦克

MCP服务器。当您想将llms.txt功能作为AI代理可以调用的工具公开时,请使用此功能。它封装了LlmsTxtKit。核心并通过模型上下文协议提供服务,因此任何支持MCP的AI系统都可以从任何网站发现、获取、验证和检索llms.txt-cuoted内容。

______________________________________________________________________

快速开始

安装

# Core library only — for direct use in your .NET applications
dotnet add package LlmsTxtKit.Core

# MCP server — for exposing llms.txt tools to AI agents
dotnet add package LlmsTxtKit.Mcp
先决条件: .NET 8.0 SDK或更高版本。LlmsTxtKit目标 net8.0 并使用现代C#语言特性,包括可以为空的引用类型和必需的属性。

解析llms.txt文件

解析器读取原始的llms.txt内容,并生成强类型的 LlmsDocument 对象。此对象使您能够结构化地访问规范中描述的标题、摘要、章节和文件列表,而无需自己编写任何Markdown解析逻辑。

using LlmsTxtKit.Core.Parsing;

// Parse from a string (useful when you've already fetched the content yourself)
string rawContent = await File.ReadAllTextAsync("example-llms.txt");
LlmsDocument document = LlmsDocumentParser.Parse(rawContent);

// The document object gives you typed access to every part of the spec:
Console.WriteLine($"Title: {document.Title}");
Console.WriteLine($"Summary: {document.Summary}");

// Sections are the H2-delimited groups of links described in the spec.
// Each section contains a list of entries, where each entry has a URL,
// a description, and metadata about whether it's in the Optional section.
foreach (LlmsSection section in document.Sections)
{
    Console.WriteLine($"\nSection: {section.Name} ({section.Entries.Count} entries)");
    
    foreach (LlmsEntry entry in section.Entries)
    {
        Console.WriteLine($"  - {entry.Description}");
        Console.WriteLine($"    URL: {entry.Url}");
    }
}

掌握基础设施意识

fetcher处理从开放网络检索llms.txt文件的实际复杂性——WAF阻塞、速率限制、超时、重定向链和DNS故障。它不会对不成功的HTTP响应抛出异常,而是返回结构化的 FetchResult 对象可以准确地告诉你发生了什么,这样你的代码就可以智能地响应。

using LlmsTxtKit.Core.Fetching;

// Create a fetcher with sensible defaults for timeout, retry, and user-agent.
// The user-agent is configurable because some WAFs block generic user agents
// but allow identified tool-specific ones.
var fetcher = new LlmsTxtFetcher(new FetcherOptions
{
    UserAgent = "LlmsTxtKit/1.0 (https://github.com/southpawriter02/LlmsTxtKit)",
    TimeoutSeconds = 15,
    MaxRetries = 2
});

FetchResult result = await fetcher.FetchAsync("https://docs.anthropic.com");

// FetchResult.Status tells you what happened at the infrastructure level,
// not just whether you got a 200 OK. This is critical because a 403 from
// Cloudflare means something very different than a 404 or a DNS failure.
switch (result.Status)
{
    case FetchStatus.Success:
        // result.Document contains the parsed LlmsDocument
        Console.WriteLine($"Found: {result.Document!.Title}");
        Console.WriteLine($"Sections: {result.Document.Sections.Count}");
        break;
    
    case FetchStatus.NotFound:
        // The server responded normally but there's no llms.txt file.
        // This is the expected outcome for most websites.
        Console.WriteLine("No llms.txt file at this domain.");
        break;
    
    case FetchStatus.Blocked:
        // A WAF, CDN, or bot-detection system blocked the request.
        // result.BlockReason may contain details (e.g., "Cloudflare 403",
        // "challenge page detected").
        Console.WriteLine($"Blocked: {result.BlockReason}");
        break;
    
    case FetchStatus.RateLimited:
        // The server returned 429 Too Many Requests.
        // result.RetryAfter may contain a suggested wait duration.
        Console.WriteLine($"Rate limited. Retry after: {result.RetryAfter}");
        break;
    
    case FetchStatus.DnsFailure:
    case FetchStatus.Timeout:
    case FetchStatus.Error:
        // Network-level failures. result.ErrorMessage has details.
        Console.WriteLine($"Fetch failed: {result.ErrorMessage}");
        break;
}

根据规范进行验证

验证器检查是否已解析 LlmsDocument 符合llms.txt规范,以及它引用的内容是否实际可访问和最新。这 ValidationReport 它生成的包含结构化警告和错误,而不仅仅是一个通过/失败布尔值,因此您可以决定自己的容差阈值。

using LlmsTxtKit.Core.Validation;

// Validate a document that was already parsed (from a fetch or from a string)
var validator = new LlmsDocumentValidator();
ValidationReport report = await validator.ValidateAsync(document, new ValidationOptions
{
    // Check that every URL listed in the llms.txt file actually resolves
    // to a live page. Disabled by default because it's slow (one HTTP
    // request per link), but valuable for thorough audits.
    CheckLinkedUrls = true,
    
    // Compare Last-Modified headers between the llms.txt file and the
    // pages it links to. Flags potential staleness if the HTML has been
    // updated more recently than the Markdown version.
    CheckFreshness = true
});

Console.WriteLine($"Valid: {report.IsValid}");
Console.WriteLine($"Warnings: {report.Warnings.Count}");
Console.WriteLine($"Errors: {report.Errors.Count}");

// Each issue includes a severity, a rule identifier, a human-readable
// message, and the location in the document where the issue was found.
foreach (ValidationIssue issue in report.AllIssues)
{
    Console.WriteLine($"  [{issue.Severity}] {issue.Rule}: {issue.Message}");
}

生成LLM就绪上下文

上下文生成器接受 LlmsDocument 并将其扩展为适合注入LLM提示符的单个字符串。它遵循FastHTML使用的相同方法 llms-ctx.txt 生成器——获取链接的Markdown文件,用XML风格的节标记包装它们,并将它们连接成一个连贯的上下文块。关键的补充是令牌预算:您可以指定最大令牌计数,生成器将优先考虑所需的部分而不是可选的部分,优雅地截断而不是在句子中间截断。

using LlmsTxtKit.Core.Context;

var generator = new ContextGenerator();
string context = await generator.GenerateAsync(document, new ContextOptions
{
    // Maximum approximate token count for the generated context.
    // If the full expansion exceeds this, Optional sections are dropped
    // first, then remaining sections are truncated with an indicator.
    MaxTokens = 8000,
    
    // Whether to include the Optional section content. The llms.txt spec
    // says Optional sections should be skipped "if you are short on space."
    // Setting this to false always skips them regardless of token budget.
    IncludeOptional = true,
    
    // Whether to wrap each section's content in XML-style tags like
    // 
...
. This helps LLMs understand
    // document structure and attribute information to the correct source.
    WrapSectionsInXml = true
});

// The resulting string is ready to be prepended to an LLM prompt as
// reference context. It contains the site's curated documentation in
// a clean, structured format that LLMs handle significantly better
// than raw HTML.
Console.WriteLine($"Generated context: {context.Length} characters");

运行MCP服务器

MCP服务器公开LlmsTxtKit。Core是一组任何支持MCP的AI代理都可以调用的工具。运行后,代理可以发现llms.txt文件,获取特定部分,运行验证,生成上下文,并将同一内容的HTML版本与Markdown版本进行比较——所有这些都是通过结构化的工具调用完成的。

# Run the MCP server as a standalone process
dotnet run --project src/LlmsTxtKit.Mcp

# Or, if installed as a global tool:
dotnet tool install --global LlmsTxtKit.Mcp
llmstxtkit-mcp --port 5050

要将服务器连接到Claude Desktop,请将其添加到MCP配置文件中(通常 claude_desktop_config.json):

{
    "mcpServers": {
        "llmstxtkit": {
            "command": "dotnet",
            "args": ["run", "--project", "/path/to/LlmsTxtKit.Mcp"],
            "env": {}
        }
    }
}

连接后,AI代理可以访问以下工具:

______________________________________________________________________

MCP工具参考

MCP服务器公开了五个工具。每个都直接映射到LlmsTxtKit中的一个功能。核心,但专为人工智能代理的工作方式而设计——结构化的输入参数、具有清晰状态指示器的结构化输出,以及对基础设施故障的优雅处理。

llmstxt_discover

目的: 检查网站是否有llms.txt文件,如果有,则返回其解析后的结构。

这通常是代理在需要网站信息时调用的第一个工具。discovery不会立即获取完整内容(对于有许多链接页面的网站来说,这可能很昂贵),而是只返回文档的骨架——标题、摘要和包含条目计数的部分列表——这样代理就可以在获取其他内容之前决定哪些部分是相关的。

输入参数:

参数类型必填说明
domainstringYes要检查的域(例如。, docs.anthropic.com).该工具构建完整的URL(https://{domain}/llms.txt)自动。
follow_redirectsboolean是否遵循HTTP重定向(默认: true).一些网站从根域重定向到文档子域。

输出: 一个包含以下内容的JSON对象 FetchStatus (成功、未找到、已阻止等),如果成功,解析的文档结构,包括标题、摘要、节名称和每个节的条目计数。如果获取被阻止,则输出包括 BlockReason 以帮助代理(或用户)了解发生了什么。

llmstxt_fetch_section

目的: 从网站的llms.txt文档中获取一个或多个部分的完整内容。

一旦代理通过以下方式发现网站的llms.txt结构 llmstxt_discover,它可以使用此工具检索特定部分的实际内容。当代理只需要一个功能或API端点的文档时,这比生成完整上下文更有效。

输入参数:

参数类型必填说明
domainstringYes要从中读取llms.txt的域。
sectionsstring[]要获取的节名称(例如。, ["Docs", "Examples"]).必须与llms.txt文件中的H2标题匹配。
max_tokensinteger返回内容的最大近似令牌计数。如果组合部分内容超过此值,则按出现顺序对条目进行优先级排序,并优雅地截断。

输出: 一个JSON对象,包含每个请求部分的获取内容,并带有每个部分的状态指示器(如果无法访问单个链接的URL,则某些部分可能会成功,而其他部分可能会失败)。内容以干净的Markdown文本返回,可以选择包裹在XML节标记中。

llmstxt_validate

目的: 对网站的llms.txt文件运行完整的验证检查,并报告任何违反规范、断开链接或新鲜度问题。

该工具对于网站所有者审核自己的llms.txt文件、人工智能代理在使用它之前评估对内容的信心以及出于研究目的(基准研究使用它将测试语料库过滤到格式良好的网站)都很有用。

输入参数:

参数类型必填说明
domainstring要验证的域。
check_linked_urlsboolean是否验证每个链接的URL是否解析(默认值: false --它很慢,但很彻底)。
check_freshnessboolean是否比较llms.txt文件和链接页面之间的Last Modified标头(默认值: false).

输出: 完整版 ValidationReport 作为JSON对象,包括顶级 IsValid 布尔值、警告和错误数组(每个数组都有严重性、规则ID、消息和文档位置)以及新鲜度元数据(如果需要)。

llmstxt_context

目的: 从站点的llms.txt文档生成完整的LLM就绪上下文字符串。

这是“给我一切”工具——它获取llms.txt文件,展开所有链接的Markdown内容,并将其组装成一个适合注入LLM提示符的上下文块。它相当于FastHTML的 llms-ctx-full.txt 提供,但按需生成,具有新鲜内容和可配置的令牌预算。

输入参数:

参数类型必填说明
domainstring要为其生成上下文的域。
max_tokensinteger最大近似令牌计数。如果超出预算,则首先删除可选部分。
include_optionalboolean是否包含可选部分内容(默认值: true).
wrap_xmlboolean是否用XML样式标记包裹部分(默认值: true).

输出: 一个JSON对象,包含生成的上下文字符串、总近似令牌计数、包含哪些部分和删除哪些部分(如果有的话)的列表,以及每个链接资源的获取/验证状态。

llmstxt_compare

目的: 对于给定的URL,获取HTML页面和llms.txt-linked Markdown版本(如果可用),并报告差异。

该工具是专门为支持 上下文崩溃缓解基准,但它对任何人来说都非常有用,可以比较人工智能系统在通过标准网络检索与通过llms.txt-cuoted Markdown阅读页面时会看到什么。比较包括令牌计数差异、内容重叠估计和新鲜度增量。

输入参数:

参数类型必填说明
urlstringYes要比较的HTML页面的URL。该工具查找网站的llms.txt,以查找此URL是否具有相应的Markdown版本。
strip_htmlboolean是否在比较之前从HTML版本中删除HTML标签(默认值: true).这模拟了大多数检索管道在将HTML传递给LLM之前如何处理HTML。

输出: 一个包含两个版本内容(HTML派生文本和Markdown)的JSON对象,每个版本的令牌计数,内容重叠分数,两个版本的上次修改时间戳(如果可用),以及 has_markdown_version 标志,指示网站的llms.txt是否链接到所请求页面的Markdown等效页面。

______________________________________________________________________

文档优先开发

LlmsTxtKit遵循严格的文档优先方法。在编写任何代码之前,都会生成并审查以下规范文件。他们住在 specs/ 目录,并与代码一起进行版本控制,因此您可以将每个实现决策追溯到驱动它的设计原理。

产品需求规格说明书 (specs/prs.md)--定义要解决的问题、目标用户(库消费者和MCP代理消费者)、成功标准、明确的非目标(项目故意做什么 *不* do)以及塑造设计的约束。如果你想了解 *为什么* LlmsTxtKit存在并且 *谁* 这是为了,从这里开始。

设计规范 (specs/design-spec.md)——技术架构文件。组件职责、数据流图、依赖关系选择、错误处理策略、缓存语义以及每个重要设计决策的基本原理。如果你想了解 *如何* 在阅读代码之前,库在架构级别工作,这是文档。

用户故事 (specs/user-stories.md)--两种受众的具体使用场景:。NET开发人员直接集成库,AI代理使用MCP服务器。每个故事都遵循“作为一个\[角色\],我想要\[能力\],这样\[利益\]”的格式,并映射到特定的API表面区域。这些故事就是测试计划所验证的。

测试计划 (specs/test-plan.md)--覆盖目标、每个组件的测试策略(单元测试、与模拟HTTP服务器的集成测试、MCP协议合规性测试)、测试数据语料库以及集成测试模拟的具体现实场景(WAF阻塞、速率限制、重定向链、格式错误的内容等)。

______________________________________________________________________

测试

LlmsTxtKit使用 x单位 用于测试。测试套件按组件组织,包括单元测试(隔离逻辑验证)和集成测试(模拟的真实HTTP场景)。

运行测试

# Run the full test suite
dotnet test

# Run only Core library tests
dotnet test tests/LlmsTxtKit.Core.Tests

# Run only MCP server tests
dotnet test tests/LlmsTxtKit.Mcp.Tests

# Run with verbose output and code coverage
dotnet test --verbosity normal --collect:"XPlat Code Coverage"

测试数据语料库

tests/TestData/ 目录包含一个精心策划的真实世界和合成llms.txt文件语料库,分为三类:

valid/ --来自生产网站(Anthropic、Cloudflare、Stripe、FastHTML、Vercel等)的格式良好的llms.txt文件。这些验证了解析器正确处理真实的生产内容,而不仅仅是规范完美的示例。每个文件都包含一个注释头,注明其源URL和捕获日期。

malformed/ --故意破坏测试解析器弹性的文件。这些涵盖了通过调查实际实现发现的常见创作错误:缺少H1标题、格式不正确的区块引用摘要、H2部分包含纯文本而不是链接列表、相对URL而不是绝对URL、混合的Markdown链接样式以及使用非标准节头的文件。

edge-cases/ --技术上有效但突破了不寻常界限的文件:标题和描述中的Unicode内容、非常大的文件(1000多个条目)、空文件(只有标题,没有其他内容)、只有可选部分的文件、描述中嵌套有深度Markdown的文件,以及链接中包含URL编码字符的文件。

______________________________________________________________________

仓库结构

LlmsTxtKit/
├── README.md                         ← You are here
├── CONTRIBUTING.md                   # Development setup, PR guidelines, coding standards
├── CHANGELOG.md                      # Version history (Keep a Changelog format)
├── LICENSE                           # MIT
├── LlmsTxtKit.sln                    # Solution file
│
├── src/
│   ├── LlmsTxtKit.Core/
│   │   ├── LlmsTxtKit.Core.csproj
│   │   ├── Parsing/                  # LlmsDocument model, parser, spec-compliant tokenization
│   │   ├── Fetching/                 # HTTP client, FetchResult types, retry logic, UA config
│   │   ├── Validation/               # ValidationReport, rule engine, freshness checks
│   │   ├── Caching/                  # In-memory + file-backed cache, TTL management
│   │   └── Context/                  # Context generation, section expansion, token budgeting
│   └── LlmsTxtKit.Mcp/
│       ├── LlmsTxtKit.Mcp.csproj
│       ├── Tools/                    # MCP tool definitions (discover, fetch, validate, etc.)
│       ├── Server/                   # MCP protocol handling, transport, registration
│       └── Program.cs                # Entry point, configuration, DI setup
│
├── tests/
│   ├── LlmsTxtKit.Core.Tests/
│   │   ├── ParserTests.cs            # Spec-compliant and edge-case parsing
│   │   ├── ValidatorTests.cs         # Per-rule validation testing
│   │   ├── FetcherTests.cs           # Mock HTTP scenarios (WAF block, 404, redirects, etc.)
│   │   ├── CacheTests.cs             # TTL, eviction, serialization
│   │   └── ContextTests.cs           # Context generation, Optional section handling
│   ├── LlmsTxtKit.Mcp.Tests/
│   │   └── ToolResponseTests.cs      # MCP protocol compliance
│   └── TestData/
│       ├── valid/                    # Corpus of well-formed llms.txt files from real sites
│       ├── malformed/                # Intentionally broken files for parser resilience testing
│       └── edge-cases/               # Unicode, very large files, empty files, etc.
│
├── docs/
│   ├── api/                          # Generated API reference from XML doc comments
│   └── images/                       # Architecture diagrams, data flow illustrations
│
└── specs/
    ├── prs.md                        # Product Requirements Specification
    ├── design-spec.md                # Architecture, components, data flow, decision rationale
    ├── user-stories.md               # Library consumer + MCP agent consumer stories
    └── test-plan.md                  # Coverage targets, integration scenarios, test data corpus

______________________________________________________________________

与研究倡议的关系

LlmsTxtKit是一项更广泛的研究计划的实际实施部门,该计划记录在 llmstxt研究 存储库。该存储库包含一篇分析论文,研究了阻碍llms.txt实现其设计意图的基础设施矛盾(“llms.txt访问悖论”),一个衡量llms.txt附加内容是否确实提高了人工智能响应质量的实证基准(“上下文崩溃缓解基准”),以及一个将研究结果转化为从业者指导的博客系列。

存储库之间的连接是直接和具体的。本文记录了访问悖论——LlmsTxtKit为其实现了解决方法( FetchResult 状态代码、WAF感知重试逻辑、优雅降级)。本文确定了信任差距——LlmsTxtKit的 ValidationReport 这是解决这一问题的第一步。基准研究使用了LlmsTxtKit的 llmstxt_compare 该工具用于生成成对的HTML与Markdown数据,形成其实验输入。如果你对 *为什么* 在LlmsTxtKit的设计决策背后,研究库有激励他们的证据。

也就是说,LlmsTxtKit的设计是基于其自身的优点,完全独立于研究之外。你无需阅读报纸即可使用图书馆。这是一个解决实际问题的实用工具:。NET开发人员需要一种处理llms.txt文件的方法,这就是实现这一点的软件包。

有关完整的跨项目交付时间表、技术栈原理、维护承诺和持续协调策略,请参阅 统一路线图 在研究存储库中。

______________________________________________________________________

路线图

LlmsTxtKit正在积极开发中。以下路线图反映了当前的计划,但优先事项可能会根据社区反馈和基准研究的结果而改变。

v1.0(目标:项目开始后约8周)

初始版本侧重于规范完整的llms.txt支持,具有强大的基础设施处理能力。包括所有五个核心组件(解析、获取、验证、缓存、上下文生成)和所有五个MCP工具。文档先行:PRS、设计规范、用户故事和测试计划已完成 *之前* 实施开始。

Post-v1.0(暂定)

内容信号集成。 Cloudflare的Content Signals框架提供有关页面内容类型、受众和新鲜度的结构化元数据,这些信息可以增强llms.txt验证和信任评分。如果基准研究表明内容质量元数据可以提高检索结果,那么Content Signals适配器将是一个自然的扩展。

注册表集成。 如果出现了一个由社区维护的llms.txt注册表(跟踪哪些网站有文件、它们的验证状态和新鲜度),LlmsTxtKit可以与之集成,提供预先验证的查找,而不是按请求获取。这将减少延迟并提高可靠性,特别是对于高流量的AI代理用例。

更广泛的规格覆盖范围。 llms.txt生态系统仍在不断发展。如果规范得到更新,或者竞争标准(CC信号、IETF aipref)获得关注,LlmsTxtKit可能会扩展以支持它们——保持相同的解析架构模式→ 获取→ 验证→ 缓存→ 生成上下文。

______________________________________________________________________

贡献

欢迎捐款。看 贡献.md 用于开发设置、编码标准和拉取请求指南。

目前最具影响力的贡献是:

测试数据。 真实世界的llms.txt文件——尤其是那些暴露解析器边缘情况、不寻常的部分结构或非标准Markdown的文件——有助于提高解析器的弹性。如果您发现llms.txt文件解析不清晰,请将其作为测试用例提交。

基础设施场景。 如果您在获取llms.txt文件时遇到有趣的WAF阻塞行为、速率限制模式或重定向链,我们想将这些场景添加到集成测试套件中。fetcher能够优雅地处理的真实HTTP行为越多,对每个人来说就越可靠。

规范解释问题。 llms.txt规范有意最小化,这意味着存在歧义(解析器应该如何处理相对URL?如果一个部分有条目怎么办 *和* 自由文本?在这种情况下,什么构成了“有效”的Markdown链接?).如果您遇到歧义,提交问题有助于我们记录解释决定,并跟踪规范在哪里可以更清晰。

______________________________________________________________________

致谢

/llms.txt 标准由创建 杰里米·霍华德 和那个 回答。人工智能 团队。规范保持在 llmstxt.org 参考Python实现位于 .LlmsTxtKit是由社区驱动的。NET实现,构建在他们的工作之上。

MCP(模型上下文协议)标准是由 Anthropic.LlmsTxtKit。Mcp实现了Mcp服务器规范,详见 模型上下文协议.io.

______________________________________________________________________

许可证

LlmsTxtKit根据 MIT许可证。参见 许可证 全文。

目录标签

目录标签

C#Claude搜索AI内容检索本地部署Markdown解析内容验证MCP服务器缓存机制

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP