ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Section Anything

โดย Omniwotรุ่น 0.1.0i★ –iรันบนเครื่อง
ชื่อใน registryio.github.Omniwot/section-anything

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

A PDF's real sections for agents: heading tree, pages and section text. Free mode is local.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: เอกสาร ตาราง และงานออฟฟิศ
  • ต้องใส่ค่าเหล่านี้: OPENAI_API_KEY, ANTHROPIC_API_KEY

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "section-anything": {
      "command": "uvx",
      "args": [
        "section-anything-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "ใส่ค่าของคุณ",
        "ANTHROPIC_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add section-anything --env OPENAI_API_KEY='ใส่ค่าของคุณ' --env ANTHROPIC_API_KEY='ใส่ค่าของคุณ' -- uvx section-anything-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "section-anything": {
      "command": "uvx",
      "args": [
        "section-anything-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "ใส่ค่าของคุณ",
        "ANTHROPIC_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "section-anything": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "section-anything-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "ใส่ค่าของคุณ",
        "ANTHROPIC_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • OPENAI_API_KEY ความลับ env
    Only for the paid quick and standard modes with OpenAI models
  • ANTHROPIC_API_KEY ความลับ env
    Only for the paid modes with a Claude model

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub Omniwot ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด เอกสาร ตาราง และงานออฟฟิศi

  • ดาวมากกว่า 0% ของอีก 2187 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 85% ของอีก 2187 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 2187 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Section Anything ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: OPENAI_API_KEY, ANTHROPIC_API_KEY

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.0) เข้า registry 4 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Agent-Native Calendar, Excel MCP Server, MCP Server for Excel

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Agent-Native Calendar

โดย BuilderIO

Agent-Native Google Calendar - manage events, sync, and public booking

รันบนคลาวด์★ 7,620MITอัปเดต 2 เดือนที่ผ่านมา
ติดตั้ง

Excel MCP Server

โดย haris-musa

ให้ AI สร้างและแก้ไฟล์ Excel ได้เอง ทั้งสูตร กราฟ และ PivotTable โดยไม่ต้องมีโปรแกรม Excel ในเครื่อง

รันบนเครื่อง★ 4,276MITอัปเดต 6 วันที่ผ่านมา
ติดตั้ง

MCP Server for Excel

โดย sbroenne

Excel automation for AI - Sheets, Power Query, DAX, VBA, Tables, Ranges and more. Windows only.

รันบนเครื่อง★ 847MITอัปเดต 3 วันที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

Section Anything

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())

# A Study of Sectioning

## 1 Introduction

### 1.1 Scope

## 2 Methods

print(tree.summary()) # mode, model, pages, sections, calls, tokens, cost_usd, seconds

Use from an agent

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.

Why

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.

Results

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)DocsTEDS
Section Anything standard (gpt-6-luna)90570.0
Section Anything quick (gpt-6-luna)90568.0
Section Anything free (no model)90560.0
Docling 2.140 (heading hierarchy on)90549.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.

Settings and cost

ModeWhat runsSent to a modelCost 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 droppednothing$0
quickrules propose candidate heading lines; a small model keeps the real ones and sets levelscandidate lines onlyabout $0.07 (gpt-6-luna)
standarda model reads every line, with font hints, and marks where sections start and endthe document textabout $0.16 (gpt-6-luna, the default); $2.90 with gpt-6.1-sol
local: quick, answered by a local Ollama modelnothing 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.

Install

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

latest from GitHub:

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.

Integrations

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

FrameworkPackageUse
LangChainlangchain-section-anythingSectionAnythingLoader("paper.pdf", mode="free").load()
LlamaIndexllama-index-readers-section-anythingSectionAnythingReader(mode="free").load_data("paper.pdf"), or as the .pdf reader of SimpleDirectoryReader
LightRAGlightrag-section-anythingparser 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).

Limitations

  • Reads the PDF's text layer; scanned PDFs need OCR first.
  • Tables, figures and equations are not structured; their text stays in the section text.
  • 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.

Repository

PathWhat it is

| packages/section-anything/ | the library and CLI (Apache-2.0)

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx