Skip to main content
Glama

Content Core

License: MIT PyPI version Downloads Downloads GitHub stars GitHub forks GitHub issues Ruff

Извлекайте, обрабатывайте и обобщайте контент из URL-адресов, файлов и текста с помощью унифицированного асинхронного Python API, CLI или сервера MCP.

Поддерживаемые форматы

Категория

Форматы

Веб

URL, HTML-страницы, видео YouTube, посты Reddit

Документы

PDF, DOCX, PPTX, XLSX, EPUB, Markdown, обычный текст

Медиа

MP3, WAV, M4A, FLAC, OGG (аудио); MP4, AVI, MOV, MKV (видео)

Related MCP server: Fetch MCP Server

Быстрый старт

pip install content-core
import content_core

result = await content_core.extract_content(url="https://example.com")
print(result.content)

Или без установки:

uvx content-core extract "https://example.com"

Использование CLI

Content Core предоставляет унифицированную команду content-core с подкомандами для извлечения, обобщения и работы с сервером MCP.

Извлечение

# From a URL
content-core extract "https://example.com"

# From a file
content-core extract document.pdf

# With JSON output
content-core extract document.pdf --format json

# With a specific engine
content-core extract "https://example.com" --engine firecrawl

# From stdin
echo "some text" | content-core extract

Обобщение

# Summarize text
content-core summarize "Long article text here..."

# With context
content-core summarize "Long text" --context "bullet points"

# From stdin
cat article.txt | content-core summarize --context "explain to a child"

Сервер MCP

content-core mcp

Конфигурация

# Set persistent config
content-core config set llm_provider anthropic
content-core config set llm_model claude-sonnet-4-20250514

# List current config
content-core config list

# Delete a config value
content-core config delete llm_provider

Конфигурация хранится в ~/.content-core/config.toml. Приоритет: флаги командной строки > переменные окружения > файл конфигурации > значения по умолчанию.

Использование без установки с помощью uvx

Все команды работают без установки с помощью uvx:

uvx content-core extract "https://example.com"
uvx content-core summarize "text" --context "one sentence"
uvx content-core mcp

Python API

Извлечение

import content_core

# From a URL
result = await content_core.extract_content(url="https://example.com")

# From a file
result = await content_core.extract_content(file_path="document.pdf")

# From text
result = await content_core.extract_content(content="some text")

# With engine override
from content_core import ContentCoreConfig
config = ContentCoreConfig(url_engine="firecrawl")
result = await content_core.extract_content(url="https://example.com", config=config)

Обобщение

import content_core

summary = await content_core.summarize("long article text", context="bullet points")

Конфигурация

from content_core import ContentCoreConfig

config = ContentCoreConfig(
    url_engine="firecrawl",
    document_engine="docling",
    audio_concurrency=5,
)
result = await content_core.extract_content(url="https://example.com", config=config)

Интеграция с MCP

Content Core включает сервер Model Context Protocol (MCP) для использования с Claude Desktop и другими приложениями, совместимыми с MCP.

Добавьте в свой claude_desktop_config.json:

{
  "mcpServers": {
    "content-core": {
      "command": "uvx",
      "args": ["content-core", "mcp"],
      "env": {
        "OPENAI_API_KEY": "sk-..."
      }
    }
  }
}

Сервер MCP предоставляет два инструмента: extract_content и summarize_content. Оба возвращают обычный текст.

Подробную информацию по настройке см. в документации MCP.

Навык Claude Code

Content Core включает SKILL.md, который обучает ИИ-агентов использовать его для извлечения контента из внешних источников. Чтобы сделать его доступным в вашем проекте Claude Code, скопируйте его в директорию навыков:

# Download the skill
curl -o .claude/skills/content-core/SKILL.md --create-dirs \
  https://raw.githubusercontent.com/lfnovo/content-core/main/SKILL.md

После установки Claude Code может использовать content-core для извлечения контента из URL-адресов, документов и медиафайлов — через CLI (uvx content-core) или MCP, если он настроен.

Провайдеры ИИ

Content Core использует Esperanto для поддержки нескольких провайдеров LLM и STT. Переключайте провайдеров, изменяя конфигурацию — изменения в коде не требуются:

# Use Anthropic for summarization
content-core config set llm_provider anthropic
content-core config set llm_model claude-sonnet-4-20250514

# Use Groq for transcription
content-core config set stt_provider groq
content-core config set stt_model whisper-large-v3

Поддерживаемые провайдеры включают OpenAI, Anthropic, Google, Groq, DeepSeek, Ollama и другие. Полный список см. в документации Esperanto.

Конфигурация

Content Core использует ContentCoreConfig на базе pydantic-settings. Настройки разрешаются в порядке приоритета: аргументы конструктора > переменные окружения (CCORE_*) > файл конфигурации (~/.content-core/config.toml) > значения по умолчанию.

Переменные окружения

Переменная

Описание

По умолчанию

CCORE_URL_ENGINE

Движок извлечения URL (auto, simple, firecrawl, jina, crawl4ai)

auto

CCORE_DOCUMENT_ENGINE

Движок извлечения документов (auto, simple, docling)

auto

CCORE_AUDIO_CONCURRENCY

Параллельная транскрипция аудио (1-10)

3

CRAWL4AI_API_URL

URL API Crawl4AI Docker (оставьте пустым для локального режима браузера)

-

FIRECRAWL_API_URL

Пользовательский URL API Firecrawl для self-hosted экземпляров

-

CCORE_FIRECRAWL_PROXY

Режим прокси Firecrawl (auto, basic, stealth)

auto

CCORE_FIRECRAWL_WAIT_FOR

Время ожидания в мс перед извлечением

3000

CCORE_LLM_PROVIDER

Провайдер LLM для обобщения

-

CCORE_LLM_MODEL

Модель LLM для обобщения

-

CCORE_STT_PROVIDER

Провайдер преобразования речи в текст

-

CCORE_STT_MODEL

Модель преобразования речи в текст

-

CCORE_STT_TIMEOUT

Тайм-аут преобразования речи в текст в секундах

-

CCORE_YOUTUBE_LANGUAGES

Предпочитаемые языки транскриптов YouTube

-

API-ключи для внешних сервисов устанавливаются через их стандартные переменные окружения (например, OPENAI_API_KEY, FIRECRAWL_API_KEY, JINA_API_KEY).

Конфигурация прокси

Content Core автоматически считывает стандартные переменные окружения HTTP_PROXY / HTTPS_PROXY / NO_PROXY. Дополнительная настройка не требуется.

Дополнительные зависимости

# Docling for advanced document parsing (PDF, DOCX, PPTX, XLSX)
pip install content-core[docling]

# Crawl4AI for local browser-based URL extraction
pip install content-core[crawl4ai]
python -m playwright install --with-deps

# LangChain tool wrappers
pip install content-core[langchain]

# All optional features
pip install content-core[docling,crawl4ai,langchain]

Использование с LangChain

При установке с дополнением langchain, Content Core предоставляет обертки инструментов, совместимые с LangChain:

from content_core.tools import extract_content_tool, summarize_content_tool

tools = [extract_content_tool, summarize_content_tool]

Документация

Разработка

git clone https://github.com/lfnovo/content-core
cd content-core

uv sync --group dev

# Run tests
make test

# Lint
make ruff

Лицензия

Этот проект лицензирован по лицензии MIT.

Участие в разработке

Вклад приветствуется! Пожалуйста, ознакомьтесь с нашим Руководством по участию для получения подробной информации.

Install Server
A
security – no known vulnerabilities
A
license - permissive license
B
quality - B tier

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/lfnovo/content-core'

If you have feedback or need assistance with the MCP directory API, please join our Discord server