SuperAPI AI 工具集

dotnet-library-docs

编程与开发

查看项目

更新于 10-18 20:16

技能介绍

用途

dotnet-library-docs 用于查询库文档:当训练数据中的知识可能已过时(出现新主版本、API 被重命名、默认值改变)时,查找第三方库与 NuGet 包的当前文档。它取代了插件原先在每个会话中启动的 Context7 MCP 服务器——使用同一个 Context7 服务,但仅在需要时通过 curl 调用,因此没有 Node 进程、没有 npx 下载,启动上下文中也不含工具 schema。

主要能力与范围

  • 第三方与 NuGet 库文档:API 用法、配置、迁移备注、代码片段。
  • 在基于某个包编写代码前,确认当前版本如何实现某项功能。
  • 同一仓库中的非 .NET 库(前端包、CLI)也可查询,Context7 同样对其建立索引。

不在范围内:

  • 官方 .NET、ASP.NET Core、EF Core 和 Azure 参考文档 → 使用本插件附带的 microsoftdocs-mcp 服务器(Microsoft Learn);路由由 [skill:dotnet-advisor] 负责。
  • 为用户自己的代码生成 XML 文档注释、README 或 API 文档 → [skill:dotnet-docs-generator]。
  • 选择使用哪个包或架构 → [skill:dotnet-advisor]。

使用方式

需要 curl 和网络访问。在网络关闭的沙箱中(Codex workspace-write 默认设置、某些 Claude Code 权限模式),运行环境会请求允许该请求;一次授权即可覆盖本次查询。

解析库 id(若用户已给出类似 /app-vnext/polly 的 id 则跳过):

curl -fsS "https://context7.com/api/v1/search?query=polly" |
  python3 -c 'import json,sys; [print(r["id"], "|", r["title"], "| trust", r.get("trustScore"), "| snippets", r.get("totalSnippets")) for r in json.load(sys.stdin)["results"][:5]]'

优先选择可信度高、来自官方仓库的 id(/<org>/<repo>),而不是镜像(/websites/...、DeepWiki)。如果没有合适的,应如实说明,而不是猜测。

按需获取单个主题的文档并裁剪到所需内容:

curl -fsS "https://context7.com/api/v1/app-vnext/polly?type=txt&topic=retry&tokens=3000"

路径中去掉 id 开头的 /。topic 用于缩小结果范围;tokens 限制结果大小(3000 通常足够;只有面对宽泛问题时才提高到 8000-10000)。带版本号的 id(/org/repo/v8.4.0,搜索结果中可用时会显示)可固定到某个发布版本。

引用所使用的库 id,并在答案依赖版本时说明文档覆盖的版本。每个问题使用一次搜索和一至两次获取,不要爬取。

可选的 API key:匿名请求可用但受速率限制。若设置了 CONTEXT7_API_KEY 环境变量,则发送它——切勿打印或写入文件:

curl -fsS -H "Authorization: Bearer $CONTEXT7_API_KEY" "https://context7.com/api/v1/search?query=polly"

在没有 key 的情况下遇到 HTTP 429,告知用户已触达匿名限制,context7.com 的免费 key 可提高该限制。

恢复 MCP 服务器:若更倾向使用 MCP 服务器(例如客户端无法运行 shell 命令),可将它加入自己的客户端配置:npx -y @upstash/context7-mcp@<version>(Claude Code:claude mcp add context7 -s user -- npx -y @upstash/context7-mcp@<version>;Codex:codex mcp add context7 -- npx -y @upstash/context7-mcp@<version>)。

适用场景

  • 在基于某个 NuGet 包或第三方库编写代码前,核对当前版本的 API 与默认行为。
  • 处理主版本升级、API 重命名或默认值变更时,查找迁移备注。
  • 需要特定版本的文档说明时,用带版本号的 id 固定查询。
  • 沙箱环境中需要按需查询且不希望常驻 MCP 进程。

限制

  • 需要 curl 与网络访问;网络关闭时需由运行环境授权请求。
  • 匿名请求受速率限制,HTTP 429 时需可选的 CONTEXT7_API_KEY。
  • 不覆盖官方 .NET、ASP.NET Core、EF Core、Azure 参考文档。
  • 不用于生成用户自有代码的 XML 注释、README 或 API 文档,也不用于包与架构选型。
  • 每个问题应遵循一次搜索、一至两次获取的用量约定,不应爬取。