返回 MCP 目录
public公开dns本地运行

content-core

Content Core是一个AI驱动的多功能内容提取与处理平台,支持从网页、文档、音视频等各类来源提取内容,并提供智能清理、摘要生成等功能,支持命令行、Python库、MCP服务等多种集成方式。

article

README

🚀 内容核心

内容核心是一个强大的、由人工智能驱动的内容提取与处理平台,它能将任何来源的内容转化为简洁、结构化的信息。通过统一的界面和多种集成选项,你可以从网站提取文本、转录视频、处理文档并生成人工智能摘要。

🚀 快速开始

安装

使用 pip 安装内容核心:

# 基础安装(PyMuPDF + BeautifulSoup/Jina 提取)
pip install content-core

# 包含增强文档处理(添加 Docling)
pip install content-core[docling]

# 支持 MCP 服务器(现在默认包含)
pip install content-core

# 完整安装(包含增强文档处理)
pip install content-core[docling]

或者,如果你在本地开发:

# 克隆仓库
git clone https://github.com/lfnovo/content-core
cd content-core

# 使用 uv 安装
uv sync

命令行界面

内容核心提供了三个用于提取、清理和总结内容的 CLI 命令:ccoreccleancsum。这些命令支持从文本、URL、文件或管道数据输入(例如,通过 cat file | command)。

# 零安装使用 uvx
# 提取内容
uvx --from "content-core" ccore https://example.com
uvx --from "content-core" ccore document.pdf

# 生成 AI 摘要
uvx --from "content-core" csum video.mp4 --context "bullet points"

Python 库

import content_core as cc

# 从任何来源提取
result = await cc.extract("https://example.com/article")
summary = await cc.summarize_content(result, context="explain to a child")

✨ 主要特性

  • 🎯 智能自动检测:根据内容类型和可用服务自动选择最佳提取方法。
  • 🔧 智能引擎选择
    • URL:Firecrawl → Jina → BeautifulSoup 备用链。
    • 文档:Docling → 增强型 PyMuPDF → 简单提取备用。
    • 媒体:OpenAI Whisper 转录。
    • 图像:支持多引擎的 OCR。
  • 📊 增强型 PDF 处理:高级 PyMuPDF 引擎,具有质量标志、表格检测和可选的数学公式 OCR。
  • 🌍 多集成方式:CLI、Python 库、MCP 服务器、Raycast 扩展、macOS 服务。
  • ⚡ 零安装选项:使用 uvx 无需安装即可即时访问。
  • 🧠 人工智能驱动的处理:集成大语言模型进行内容清理和总结。
  • 🔄 异步处理:使用 asyncio 构建,实现高效处理。

📦 安装指南

安装 Content Core

可以使用 pip 进行安装:

# 基础安装(PyMuPDF + BeautifulSoup/Jina 提取)
pip install content-core

# 包含增强文档处理(添加 Docling)
pip install content-core[docling]

# 支持 MCP 服务器(现在默认包含)
pip install content-core

# 完整安装(包含增强文档处理)
pip install content-core[docling]

或者在本地开发时:

# 克隆仓库
git clone https://github.com/lfnovo/content-core
cd content-core

# 使用 uv 安装
uv sync

💻 使用示例

基础用法

import asyncio
from content_core.extraction import extract_content

async def main():
    # 从原始文本中提取
    text_data = await extract_content({"content": "This is my sample text content."})
    print(text_data)

    # 从 URL 中提取(默认使用 'auto' 引擎)
    url_data = await extract_content({"url": "https://www.example.com"})
    print(url_data)

    # 从本地视频文件中提取(获取转录内容,默认引擎为 'auto')
    video_data = await extract_content({"file_path": "path/to/your/video.mp4"})
    print(video_data)

    # 从本地 Markdown 文件中提取(默认引擎为 'auto')
    md_data = await extract_content({"file_path": "path/to/your/document.md"})
    print(md_data)

    # 对文档使用 Docling 进行单次执行覆盖
    doc_data = await extract_content({
        "file_path": "path/to/your/document.pdf",
        "document_engine": "docling",
        "output_format": "html"
    })
    
    # 对 URL 使用 Firecrawl 进行单次执行覆盖
    url_data = await extract_content({
        "url": "https://www.example.com",
        "url_engine": "firecrawl"
    })
    print(doc_data)

if __name__ == "__main__":
    asyncio.run(main())

(更多详细示例请参见 src/content_core/notebooks/run.ipynb

高级用法

与 Langchain 集成

对于与 Langchain 框架集成的用户,content-core 提供了一组兼容的工具。这些工具位于 src/content_core/tools 目录中,允许你直接在 Langchain 代理和链中利用 content-core 的提取、清理和总结功能。

from content_core.tools import extract_content_tool, cleanup_content_tool, summarize_content_tool
from langchain.agents import initialize_agent, AgentType

tools = [extract_content_tool, cleanup_content_tool, summarize_content_tool]
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)
agent.run("Extract the content from https://example.com and then summarize it.") 

Docling 集成

Content Core 支持一个可选的基于 Docling 的提取引擎,用于处理丰富的文档格式(PDF、DOCX、PPTX、XLSX、Markdown、AsciiDoc、HTML、CSV、图像)。

from content_core.config import set_document_engine, set_url_engine, set_docling_output_format

# 切换文档引擎到 Docling
set_document_engine("docling")

# 切换 URL 引擎到 Firecrawl
set_url_engine("firecrawl")

# 选择输出格式:'markdown'、'html' 或 'json'
set_docling_output_format("html")

# 现在使用 ccore.extract 或 ccore.ccore
result = await cc.extract("document.pdf")

📚 详细文档

MCP 服务器集成

Content Core 包含一个模型上下文协议(MCP)服务器,可实现与 Claude Desktop 和其他 MCP 兼容应用程序的无缝集成。MCP 服务器通过标准化协议暴露 Content Core 的强大提取功能。

# 安装 Content Core(包含 MCP 服务器)
pip install content-core

# 或者直接使用 uvx(无需安装)
uvx --from "content-core" content-core-mcp

添加到你的 claude_desktop_config.json

{
  "mcpServers": {
    "content-core": {
      "command": "uvx",
      "args": [
        "--from",
        "content-core",
        "content-core-mcp"
      ]
    }
  }
}

详细的设置说明、配置选项和使用示例,请参阅 MCP 文档

增强型 PDF 处理

Content Core 采用了优化的 PyMuPDF 提取引擎,对科学文档和复杂 PDF 有显著改进。

# 在 cc_config.yaml 中
extraction:
  pymupdf:
    enable_formula_ocr: true      # 对公式较多的页面启用 OCR
    formula_threshold: 3          # 每页触发 OCR 的最小公式数量
    ocr_fallback: true           # OCR 失败时的优雅回退
# 运行时配置
from content_core.config import set_pymupdf_ocr_enabled
set_pymupdf_ocr_enabled(True)
# 安装 Tesseract OCR(可选,用于公式增强)
# macOS
brew install tesseract

# Ubuntu/Debian
sudo apt-get install tesseract-ocr

注意:OCR 是可选的 - 无需任何额外设置即可自动获得改进的 PDF 提取。

macOS 服务集成

Content Core 提供了与 macOS Finder 的强大右键集成,允许你无需安装即可从任何文件中提取和总结内容。你可以选择剪贴板或 TextEdit 输出,以获得最大的灵活性。 详细的设置说明和使用示例,请参阅 macOS 服务文档

Raycast 扩展

Content Core 提供了一个强大的 Raycast 扩展,具有智能自动检测功能,可无缝处理 URL 和文件路径。你可以直接从 Raycast 界面提取和总结内容,无需切换应用程序。 详细的设置说明、配置选项和使用示例,请参阅 Raycast 扩展文档

🔧 技术细节

智能引擎选择

  • URL:采用 Firecrawl → Jina → BeautifulSoup 备用链。
  • 文档:使用 Docling → 增强型 PyMuPDF → 简单提取备用。
  • 媒体:利用 OpenAI Whisper 进行转录。
  • 图像:支持多引擎的 OCR。

增强型 PDF 处理

Content Core 的 PyMuPDF 提取引擎有显著改进,包括:

  • 🔬 数学公式提取:增强的质量标志消除了 <!-- formula-not-decoded --> 占位符。
  • 📊 自动表格检测:将表格转换为 Markdown 格式,便于大语言模型处理。
  • 🔧 高质量文本渲染:更好的连字、空格和图像 - 文本集成。
  • ⚡ 可选 OCR 增强:对公式较多的页面进行选择性 OCR(需要 Tesseract)。

📄 许可证

本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。

贡献

欢迎贡献!有关如何开始的更多详细信息,请参阅我们的 贡献指南

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端