Agent-Native Calendar
Agent-Native Google Calendar - manage events, sync, and public booking
作者提供的说明(英文原文)
A PDF's real sections for agents: heading tree, pages and section text. Free mode is local.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
OPENAI_API_KEY, ANTHROPIC_API_KEY标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"section-anything": {
"command": "uvx",
"args": [
"section-anything-mcp"
],
"env": {
"OPENAI_API_KEY": "your-value",
"ANTHROPIC_API_KEY": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add section-anything --env OPENAI_API_KEY=your-value --env ANTHROPIC_API_KEY=your-value -- uvx section-anything-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"section-anything": {
"command": "uvx",
"args": [
"section-anything-mcp"
],
"env": {
"OPENAI_API_KEY": "your-value",
"ANTHROPIC_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"section-anything": {
"type": "stdio",
"command": "uvx",
"args": [
"section-anything-mcp"
],
"env": {
"OPENAI_API_KEY": "your-value",
"ANTHROPIC_API_KEY": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月7日
注册名称已通过 GitHub 账户 Omniwot 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:OPENAI_API_KEY, ANTHROPIC_API_KEY
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.0)于5天前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Agent-Native Calendar, Excel MCP Server, MCP Server for Excel
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Agent-Native Google Calendar - manage events, sync, and public booking
Create and edit Excel files with AI: charts, PivotTables, formulas. No Excel needed.
Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
Find the real sections of a PDF: every heading, its level, the pages it spans and the exact text under it. Built for RAG pipelines and document tools that need structure, with a dial from free rules to an LLM that reads the whole document, and a hard cost cap on every paid run.
Real output of section-anything 0.1.3, Quick mode (gpt-6-luna), on *Visual Instruction Tuning*, Liu et al., arXiv:2304.08485, CC BY 4.0; the wait for the run is shortened (capture, script). Quick mode's output can vary slightly between runs. Try it on that paper in the Colab notebook (Free mode, no key needed), or in the browser on the Hugging Face Space (Free mode on any PDF, plus saved Quick check and Standard runs on three example papers; don't upload confidential documents).
Pre-release (0.1). The API may change before 1.0.
Website: https://omniwot.github.io/section-anything/ (how it works, benchmarks, examples)
import section_anything
tree = section_anything.section("paper.pdf", mode="quick") print(tree.to_markdown())
print(tree.summary()) # mode, model, pages, sections, calls, tokens, cost_usd, seconds
An agent can take a PDF's outline first and then read only the sections it needs (0.1.6 or newer).
MCP server for Claude Code, Claude Desktop, Cursor and other MCP hosts, with three read-only tools: section_pdf (the heading tree; free mode by default, no model, $0), read_sections (the text of chosen sections) and estimate_cost (what quick and standard would cost).
claude mcp add --transport stdio section-anything -- uvx --from "section-anything[mcp]" section-anything-mcp
Other hosts take the same command in their mcpServers JSON:
{"mcpServers": {"section-anything": {"command": "uvx",
"args": ["--from", "section-anything[mcp]", "section-anything-mcp", "--max-usd", "0"]}}}
Paid modes use the API keys in the server's environment (claude mcp add --env OPENAI_API_KEY=...) and are capped per document by --max-usd (default 0.50; 0 keeps every run free). --root DIR limits the folders the server may read.
Agent skill: copy skills/section-anything into your agent's skills folder (Claude Code: ~/.claude/skills/) and the agent uses the command line the same way: outline, then the sections it needs.
Shell: section-anything paper.pdf --format json --body prints every section with its heading_path, parent, pages and text.
PDF converters mostly infer headings from how a line looks, so paper titles, author names, captions and theorem statements can come out as sections, and real subsections can get the wrong level. Anything that chunks or navigates by headings inherits those mistakes. Section Anything combines the PDF's own outline (bookmarks) and printed table of contents, typography and numbering rules, and optionally a model that reviews or reads the text.
Heading-tree similarity (TEDS, 0–100, higher is better) on READoc with READoc's own scoring code, October 2026. Docling and MinerU convert whole documents (layout, tables, figures, formulas, OCR); these numbers compare only the heading tree. Papers not used while developing the method:
| READoc arXiv papers (held out) | Docs | TEDS |
|---|---|---|
Section Anything standard (gpt-6-luna) | 905 | 70.0 |
Section Anything quick (gpt-6-luna) | 905 | 68.0 |
Section Anything free (no model) | 905 | 60.0 |
| Docling 2.140 (heading hierarchy on) | 905 | 49.4 |
quick is release 0.1.2 and free release 0.1.5. 0.1.1 found the abstract's heading (journals often set it small, bold or run into the first line): +2.4 to free and +3.7 to quick in a pre-registered held-out test (0.1.0: 54.8 and 63.9). 0.1.2 keeps a section number that the PDF extractor split off its title ("1" | "Introduction"): +0.7 to free (95% CI +0.5 to +1.0) and +0.5 to quick (95% CI +0.4 to +0.8; +1.7 on the 291 papers it changes) in a second pre-registered test (0.1.1: 57.2 and 67.4). 0.1.5 gives back matter (References, Acknowledgements, Appendix) and appendix sections the level of the numbered sections: +2.1 to free (95% CI +1.7 to +2.4; 136 papers better, 4 worse) in a fourth pre-registered test on these papers (0.1.4: 57.9); READMEs unchanged. standard uses none of these. See the changelog.
On the same 905 papers with MinerU's cloud (3.4.4, VLM): our standard 70.0, our quick 68.0, MinerU + its own LLM title levels (gpt-6.1-sol) 64.8 (paired difference: standard +5.1, 95% CI +4.0 to +6.2, or +2.8 without the 154 papers where that step, run by us on gpt-6.1-sol, returned no parsable levels and kept MinerU's raw levels; quick +3.1, 95% CI +2.1 to +4.1, but level without those papers: +1.0, 95% CI −0.03 to +2.0), MinerU alone 53.9, Docling 49.4.
On GitHub READMEs, free scores higher than Docling: on 1,112 bookmarked READoc READMEs not used in development, 81.9 against 75.5, and Docling reaches 79.7 with the opt-in outline check we proposed upstream (docling#5002), the same idea as free's outline check. On 27 UK government reports never used in development (answer keys from each report's HTML version), the outline check improved free by +5.7 (95% CI +0.4 to +12.2; 43.1 → 48.8; measured on 0.1.0).
Where others win: on the 1,124 held-out READoc READMEs our quick and standard only tie with Docling (about 75). On the 905 held-out papers Docling scored higher than standard on 103 papers and lower on 773 (by more than 0.5 points). Nougat, an OCR model trained on arXiv, has the highest published READoc arXiv score (88.5 in the READoc paper, older tool versions; we have not run it). Docling and MinerU also read scanned pages with OCR; Section Anything needs a text layer. Better headings improved RAG retrieval in our Qasper test but not answer quality.
| Mode | What runs | Sent to a model | Cost per 1,000 pages |
|---|---|---|---|
free (default) | bookmarks or the printed contents as the outline, then typography and numbering rules; headings a complete-looking outline does not list are dropped | nothing | $0 |
quick | rules propose candidate heading lines; a small model keeps the real ones and sets levels | candidate lines only | about $0.07 (gpt-6-luna) |
standard | a model reads every line, with font hints, and marks where sections start and end | the document text | about $0.16 (gpt-6-luna, the default); $2.90 with gpt-6.1-sol |
local: | quick, answered by a local Ollama model | nothing leaves the machine | $0 |
Every paid run is estimated first and capped (default $0.50 per document); over the cap it downgrades (standard → quick → free) or fails, as you choose.
The default model for quick and standard is gpt-6-luna, the model behind their READoc scores above. standard can run on gpt-6.1-sol instead (SECTIONANY_STANDARD_MODEL=gpt-6.1-sol or model="gpt-6.1-sol") at about 18 times the cost. On development documents only (98 READoc papers and 100 READMEs, same code) it scored 5.8 points higher on READMEs (95% CI +2.1 to +9.6) and 0.9 higher on papers (CI -0.3 to +2.1, not significant); this is not confirmed on held-out documents.
Python 3.11 or newer:
pip install section-anything
pip install "section-anything[anthropic]" # optional: Claude models on Anthropic's own API pip install "section-anything[docling]" # optional: tree.to_docling_document() pip install "section-anything[langfuse]" # optional Langfuse tracing pip install "section-anything[mcp]" # optional MCP server: section-anything-mcp
pip install "git+https://github.com/Omniwot/section-anything#subdirectory=packages/section-anything"
Command line:
section-anything paper.pdf # free, Markdown headings
section-anything paper.pdf --mode quick --format json # JSON with spans and cost section-anything paper.pdf --mode standard --max-usd 0.5 # cap this document at $0.50
API keys come from the environment only (SECTIONANY_API_KEY, or OPENAI_API_KEY for OpenAI's endpoint); any OpenAI-compatible endpoint works. Claude models run on Anthropic's own API with the anthropic extra and ANTHROPIC_API_KEY; on development documents Claude Haiku 5.5 tied the default at about 3 times the cost (Providers). Full options, output format and the security model for untrusted PDFs: packages/section-anything/README.md.
One document per section, with the heading path, pages and character span as metadata. Each package depends only on section-anything and the framework's core package.
pip install langchain-section-anything
pip install llama-index-readers-section-anything pip install lightrag-section-anything
| Framework | Package | Use |
|---|---|---|
| LangChain | langchain-section-anything | SectionAnythingLoader("paper.pdf", mode="free").load() |
| LlamaIndex | llama-index-readers-section-anything | SectionAnythingReader(mode="free").load_data("paper.pdf"), or as the .pdf reader of SimpleDirectoryReader |
| LightRAG | lightrag-section-anything | parser engines (sectionany_free, sectionany_quick, ...) for LightRAG's heading-based chunker, without a MinerU or Docling service |
To run Docling's HybridChunker or Unstructured's chunk_by_title on these headings, export the tree with tree.to_docling_document() or tree.to_unstructured_elements() (how).
free is best when the PDF has bookmarks or a printed table of contents. When the bookmarks look complete, it drops headings they do not list; if the bookmarks stop at the top levels, real deeper headings are lost (about 6% of READMEs lose more than 5 points). Turn this off with SECTIONANY_DEMOTE_UNLISTED_HEADINGS='[]'.quick and standard send text to the provider you configure.| Path | What it is |
|---|
| packages/section-anything/ | the library and CLI (Apache-2.0)
只显示了开头部分;其余内容请在仓库中阅读