splitter-mr

Reads documents and splits them into LLM-ready text chunks using modular readers and splitters.

28|3|Updated Jun 3, 2025
One-click install
npx skills add https://github.com/andreshere00/Splitter_MR --skill splitter-mr-andreshere00
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: splitter-mr
Source: https://github.com/andreshere00/Splitter_MR
Command: npx skills add https://github.com/andreshere00/Splitter_MR --skill splitter-mr-andreshere00

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Preparing documents for LLM applications requires parsing many file formats and chunking text into appropriately sized, meaningful segments. This Skill guides you through SplitterMR's modular pipeline of readers, vision models, splitters, and embeddings to produce structured, metadata-rich chunks. ## Core Features & Use Cases - Multi-format reading: Parse text, PDF, Office files, JSON/YAML, HTML, and images with VanillaReader, MarkItDownReader, DoclingReader, or TextractReader, optionally using vision models for OCR and image captioning. - Flexible splitting strategies: Choose from character, word, sentence, paragraph, recursive, token, keyword, semantic, header, HTML tag, code, JSON, paged, and row/column splitters. - End-to-end workflows: Includes complete examples for semantic splitting with embeddings, multimodal PDF processing, RAG ingestion into Qdrant, and serving read/split operations over a FastAPI REST and MCP server. - Use Case: Build a RAG pipeline by reading a book from a URL, splitting it by chapter with KeywordSplitter, embedding chunks with OpenRouter, and upserting them into Qdrant for retrieval-augmented generation. ## Quick Start Use the splitter-mr skill to read a document with VanillaReader and split it into chunks with CharacterSplitter, then show me the resulting chunks and their IDs.

Frequently Asked Questions about splitter-mr

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split text into chunks for LLM applications in Python?

Install splitter-mr, read your file with a reader like VanillaReader, then pass the ReaderOutput to a splitter such as CharacterSplitter or RecursiveCharacterSplitter. The split method returns a SplitterOutput with chunks, unique chunk IDs, and preserved document metadata.

What text splitting strategies does SplitterMR support?

SplitterMR supports character, word, sentence, paragraph, recursive character, token, keyword (regex), semantic, header, HTML tag, code, JSON, paged, and row/column splitting. Each splitter is configured with parameters like chunk_size and chunk_overlap.

How do I split text by semantic similarity using embeddings?

Use SemanticSplitter with an embedding provider such as OpenRouterEmbedding, OpenAI, Gemini, or HuggingFace. Pass the embedding object to the splitter constructor along with parameters like buffer_size and breakpoint_threshold_type, then call split on a ReaderOutput.

Does SplitterMR support reading PDFs with vision models?

Yes, pass a vision model such as OpenRouterVisionModel or OpenAIVisionModel to any reader via the model parameter. The reader uses the VLM for OCR, image captioning, and text extraction from PDFs and images, requiring the multimodal extra for some providers.

Can I use SplitterMR as an MCP or REST server?

Yes, install the mcp extra and run splitter-mr-mcp to start a FastAPI server with REST endpoints (/api/v1/read, /split, /read-and-split) and a Streamable HTTP MCP server at /mcp. File access requires setting SPLITTER_MR_ALLOWED_ROOT.

What are the limitations of the SplitterMR MCP server?

The server is stateless and does not persist chunks, has no built-in authentication, and disables server-local file access until SPLITTER_MR_ALLOWED_ROOT is set. URL sources require SPLITTER_MR_ALLOW_URLS=true, so deploy it only on private networks or behind a proxy.