# lfnovo/content-core [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/lfnovo/content-core  
**GitHub Stars:** 171  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/lfnovo-content-core

## Description
Extract content from URLs, documents, videos, and audio files using intelligent auto-engine selection. Supports web pages, PDFs, Word docs, YouTube transcripts, and more with structured JSON responses.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "content-core": {
    "command": "uvx",
    "args": ["content-core"]
  }
}
```

## Documentation

## What lfnovo/content-core MCP server does

The lfnovo/content-core MCP server gives MCP-compatible applications two content-processing tools: `extract_content` and `summarize_content`. Extraction accepts URLs, files, or text and covers web pages, YouTube videos, Reddit posts, PDFs, DOCX, PPTX, XLSX, EPUB, HTML, Markdown, plain text, audio, and video. The lfnovo/content-core MCP server returns plain text through the MCP interface.

Extraction is intended to hide differences between source types. URL handling can use automatic selection or a configured engine such as simple extraction, Firecrawl, Jina, or Crawl4AI. Document handling supports automatic or simple processing, with Docling available as an optional advanced parser. Audio and video processing can use speech-to-text providers through the project’s provider abstraction.

## How it works

The package is implemented as a Python application with three access paths: an async Python API, the `content-core` command-line interface, and the MCP server. Starting `content-core mcp` launches the MCP process for a local client such as Claude Desktop.

The extraction tool can receive a URL, file path, or content value. The summarization tool works with text and can receive additional context that guides the requested summary. Configuration selects the URL and document engines, controls audio transcription concurrency, and identifies LLM or speech-to-text providers. Settings are resolved from constructor or command options first, then `CCORE_*` environment variables, the configuration file at `~/.content-core/config.toml`, and defaults.

The lfnovo/content-core MCP server relies on external provider credentials when a selected engine or model requires them. Supported provider families include OpenAI, Anthropic, Google, Groq, DeepSeek, and Ollama, although the exact available options are provided by the Esperanto dependency.

## Setup and configuration

Install the package with `pip install content-core`, or run it without a persistent installation through `uvx`. The MCP command is:

```bash
uvx content-core mcp
```

A Claude Desktop configuration can run that command and pass provider credentials such as `OPENAI_API_KEY` in the process environment. The project also supports persistent settings through `content-core config set`, `config list`, and `config delete`.

Relevant configuration names include `CCORE_URL_ENGINE`, `CCORE_DOCUMENT_ENGINE`, `CCORE_AUDIO_CONCURRENCY`, `CCORE_LLM_PROVIDER`, `CCORE_LLM_MODEL`, `CCORE_STT_PROVIDER`, `CCORE_STT_MODEL`, `CCORE_STT_TIMEOUT`, and `CCORE_YOUTUBE_LANGUAGES`. External services use their own standard variables, including `OPENAI_API_KEY`, `FIRECRAWL_API_KEY`, and `JINA_API_KEY`. Optional extras add Docling, Crawl4AI, or LangChain support. Crawl4AI may also require Playwright installation when used in local browser mode.

## Tools and capabilities

- `extract_content`: Reads a URL, file, or text value and extracts usable content.
- `summarize_content`: Produces a summary from supplied text, with optional context.
- Automatic URL engine selection, with explicit engine overrides available.
- Document parsing for common office, ebook, markup, and plain-text formats.
- Audio and video transcription through configurable speech-to-text providers.
- Local MCP execution through `uvx` or an installed `content-core` command.

## Limitations and notes

The MCP tools return plain text rather than a documented structured response schema. Some formats and engines depend on optional packages or external services. Selecting `docling` without installing the corresponding extra raises a configuration error; the default automatic document mode can fall back without it. Provider-based summarization, transcription, Firecrawl, and Jina use credentials and service availability outside the MCP process.

The lfnovo/content-core MCP server is distributed under the MIT license. The repository also includes an agent skill for Claude Code and Codex, but that skill is separate from the MCP transport and does not change the two MCP tools exposed by the server.

_Full upstream README: https://allmcps.com/mcp/lfnovo-content-core/readme_

