跳到正文

MCP 服务器

markitai-mcp 服务器随 markitai 主包发布(安装 mcp extra 即得;markitai mcp 子命令启动的是同一个服务,官方 MCP Registry 条目用的就是 uvx --from "markitai[mcp]" markitai mcp),通过 Model Context Protocol(stdio 传输)把 markitai 的转换能力提供给 AI Agent。Agent 可用四个工具完成本地文档与 URL 的单个及批量转换,运行的是与 CLI、Python API 完全相同的管线。

无需安装步骤:uvx 按需拉取并运行。

接入

Claude Code —— 一条命令:

bash
claude mcp add markitai -- uvx --from "markitai[mcp]" markitai-mcp

Claude Desktop —— 在 claude_desktop_config.json 中加一个条目:

json
{
  "mcpServers": {
    "markitai": { "command": "uvx", "args": ["--from", "markitai[mcp]", "markitai-mcp"] }
  }
}

其他 MCP 客户端同理:command 填 uvx,参数填 ["--from", "markitai[mcp]", "markitai-mcp"]。没有 uv 时,pip install "markitai[mcp]" 提供同名的 markitai-mcp 命令。

工具

工具用途
convert_document单个本地文件(绝对路径)→ Markdown
convert_url单个网页 → 提取正文的干净 Markdown
batch_convert多个路径/URL 后台转换 → 返回 job_id
job_status查询批量任务的进度与逐项结果

每次转换都写出真实文件——写入 Agent 传入的 output_dir,或一个新建的临时目录(路径随结果返回)。结果默认内联 Markdown 文本,超过约 40 KB 时改为截断预览加 markdown_file(完整输出的文件路径),大文档不会灌爆模型上下文。

批量任务在服务器进程内执行,任务表保存在内存中:轮询 job_status 直到 status"completed",再读取各项的 markdown_file。服务器重启后任务记录即丢失,已写出的文件仍在。

LLM 增强

所有工具的 LLM 增强默认关闭,按调用以 llm: true 开启(alt/desc 控制图片分析,ocrscreenshot 对应各自能力)。开启前需要配置模型——写在 ~/.markitai/config.json与 CLI 共用),或通过服务器条目的环境变量:

json
{
  "mcpServers": {
    "markitai": {
      "command": "uvx",
      "args": ["--from", "markitai[mcp]", "markitai-mcp"],
      "env": {
        "MODEL": "openai/gpt-5.6-luna",
        "OPENAI_API_KEY": "sk-..."
      }
    }
  }
}

在未配置模型的情况下以 llm: true 调用会得到一条可读的错误,其中原样给出上述配置指引,Agent 可以直接转述修复方法。

可选能力沿用 markitai 的 extras:扫描件 OCR 需要 markitai[ocr],URL 截图需要 markitai[browser]——uvx 场景写作 "args": ["--from", "markitai[mcp]", "--with", "markitai[ocr]", "markitai-mcp"]