Local-first Python CLI and MCP server for versioned, cited context from web and document sources.
- ✓Open-source license (MIT)
- ✓Actively maintained (<30d)
- ✓Clear description
- ✓Topics declared
- ✓Documented (README)
claude mcp add docpull -- python -m docpull{
"mcpServers": {
"docpull": {
"command": "python",
"args": ["-m", "docpull"]
}
}
}MCP Servers overview
<p align="center"> <img src="https://raw.githubusercontent.com/raintree-technology/docpull/main/docs/launch-assets/logo-square-light-400.png" alt="DocPull" width="128" /> </p> # DocPull <!-- project-record: docpull --> **Active open-source project · MIT License** DocPull turns changing public web sources into cited, reproducible context for AI agents and retrieval pipelines. Use it when your application needs to know which sources it used, whether they changed, and how to rebuild the same context later. [](https://www.python.org/downloads/) [](https://pypi.org/project/docpull/) [](LICENSE) <!-- mcp-name: io.github.raintree-technology/docpull --> ## Install and sync your first source ```bash pip install docpull docpull init stripe-docs docpull add https://docs.stripe.com docpull sync docpull query "retry policy" --max-tokens 4000 docpull diff docpull export context-pack --target cursor ``` The project stores declared sources in `docpull.yaml` and resolved inputs in `.docpull/context.lock.json`. Later syncs produce a hash-based diff while preserving source URLs, content hashes, run IDs, citations, and export metadata. `docpull query` retrieves deduplicated passages from locked archives with version filters, a response budget, and exact source spans. The same query is available through the Python SDK and MCP. See [Query locked context](docs/context-dependencies.md#query-locked-context) for budget semantics and queries across projects.  No account or paid API is required for this path. Direct fetching, discovery, extraction, indexing, pack analysis, and diffs run locally. ## Why use DocPull - **Reproduce agent context.** Stable IDs, hashes, manifests, and lockfiles show which source versions produced an answer or artifact. - **Detect source drift.** Sync and diff documentation, product pages, policies, feeds, repositories, packages, standards, and local documents. - **Keep evidence inspectable.** Markdown, NDJSON, SQLite, citations, and provenance sidecars remain readable without a hosted service. - **Choose the downstream surface.** Export context for agent clients, vector import, data workflows, or a versioned context-pack release. - **Keep expensive routes explicit.** Browser and cloud rendering require an explicit choice and can be blocked with a zero-dollar budget. ## How it works ```text declared sources → local acquisition → versioned evidence → diff and validation → export ``` DocPull's v3 pack contract separates raw extraction, agent-ready context, and eval-grade evidence. Validate the level a downstream system requires: ```bash docpull pack prepare packs/docs --eval-grade docpull pack validate packs/docs --level eval docpull ci --prepare ``` `docpull ci` checks freshness, citation coverage, pack quality, rights metadata, and other configured gates. It writes `context-ci.report.json` and `CONTEXT_CI.md`, then exits non-zero when a hard gate fails. ## Supported surfaces | Surface | Use it for | Start here | | --- | --- | --- | | CLI | Fetch, sync, diff, validate, and export | [`docs/cli-recipes.md`](docs/cli-recipes.md) | | Python SDK | Embed acquisition in Python applications | [`docs/surface-contract.md`](docs/surface-contract.md) | | MCP server | Give local agent clients source tools | [MCP server](#mcp-server) | | TypeScript SDK | Read local packs and invoke the CLI from Node or Bun | [`sdk/js/README.md`](sdk/js/README.md) | | Agent plugin | Install the supported MCP workflow in an agent client | [`plugin/README.md`](plugin/README.md) | Common source shapes include static and server-rendered websites, OpenAPI documents, feeds, papers, public GitHub repositories, npm and PyPI packages, standards, datasets, transcripts, Wikimedia pages, product and policy pages, and local PDF or office files. See [context-pack workflows](docs/context-packs.md) for the complete surface. ## MCP server ```bash pip install 'docpull[mcp]' docpull mcp ``` Claude Code can register the same local server: ```bash claude mcp add --transport stdio docpull -- docpull mcp ``` The Python stdio server is the supported release path. The TypeScript code formerly documented under `mcp/` is an [internal semantic-search lab](docs/internal-mcp-lab.md), not part of the package contract. ## Limits and security boundary DocPull is an evidence-acquisition engine, not a hosted competitive-intelligence product. It owns fetching, explicit rendering adapters, versioning, citations, hashing, validation, replay, and export. Downstream products own scheduling, human review, approved claims, legal conclusions, accounts, and notifications. The default path does not handle complex interactive browser workflows, CAPTCHAs, stealth scraping, or private dashboards. JavaScript rendering is explicit. Authenticated sources require environment-variable references; DocPull does not persist credential values in project artifacts. Security defaults include HTTPS-only fetching, robots.txt compliance, SSRF and DNS rebinding protections, redirect guards, XXE protection, and path-traversal checks. Read the [web-source boundary](docs/scraping-boundary.md), [security posture](docs/compliance.md), and [evidence-engine decision](docs/adr/0001-evidence-acquisition-engine.md) before extending acquisition behavior. ## Documentation and evidence - [CLI recipes](docs/cli-recipes.md) — Common commands and advanced workflows. - [Context dependencies](docs/context-dependencies.md) — Project and lockfile model. - [Context Pack Contract v3](docs/context-pack-contract-v3.md) — Artifact levels and compatibility. - [Public contracts](docs/contracts.md) — Schemas and versioning rules. - [Alternatives](docs/alternatives.md) — Browser automation and hosted extraction tradeoffs. - [Evaluation lab](bench/docs/index.md) — Reproducible methods, results, and claim boundaries. - [Changelog](docs/CHANGELOG.md) — Release history. ## Raintree open-source system DocPull owns evidence acquisition and reproducible agent context. It can be used independently; the sibling projects do not imply a required integration or shared release cycle. | Project | Responsibility | | --- | --- | | [Raintree Standards](https://github.com/raintree-technology/raintree.standards) | Defines governed requirements and evidence. | | [Trellis](https://github.com/raintree-technology/trellis) | Enforces shared JavaScript and TypeScript code policy. | | [HIG Doctor](https://github.com/raintree-technology/hig-doctor) | Audits interface source and provides HIG guidance. | | [PolicyStrata](https://github.com/raintree-technology/policystrata) | Tests cross-layer policy behavior. | See the [Raintree open-source portfolio](https://raintree.technology/portfolio#open-source) for current lifecycle and distribution links. ## Project policies [Contributing](CONTRIBUTING.md) · [Code of Conduct](CODE_OF_CONDUCT.md) · [Security](SECURITY.md) · [Metrics and evidence limits](METRICS.md) · [Source repository](https://github.com/raintree-technology/docpull) · [MIT License](LICENSE)
What people ask about docpull
What is raintree-technology/docpull?
+
raintree-technology/docpull is mcp servers for the Claude AI ecosystem. Local-first Python CLI and MCP server for versioned, cited context from web and document sources. It has 28 GitHub stars and its last recorded update is dated 2026-10-10.
How do I install docpull?
+
You can install docpull by cloning the repository (https://github.com/raintree-technology/docpull) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.
Is raintree-technology/docpull safe to use?
+
Our security agent has analyzed raintree-technology/docpull and assigned a Trust Score of 95/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.
Who maintains raintree-technology/docpull?
+
raintree-technology/docpull is maintained by raintree-technology. The last recorded GitHub activity is dated 2026-10-10, with 0 open issues.
Are there alternatives to docpull?
+
Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.
Deploy docpull to your cloud
Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.
Maintain this repo? Add a badge to your README
Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.
[](https://claudewave.com/repo/raintree-technology-docpull)<a href="https://claudewave.com/repo/raintree-technology-docpull"><img src="https://claudewave.com/api/badge/raintree-technology-docpull" alt="Featured on ClaudeWave: raintree-technology/docpull" width="320" height="64" /></a>More MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
The fastest path to AI-powered full stack observability, even for lean teams.