プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

PDFluent

作者:pdfluentバージョン 0.3.0i★ –iパソコンで動く
レジストリ名io.github.pdfluent/pdfluent-mcp

インストール

概要

作者による説明(英語の原文)

Read, search and fill PDFs as markdown, text, tables, forms. Your documents stay on your machine.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: 検索・AIの記憶

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • 自分で入力するもの: PDFLUENT_MCP_MAX_PAGES, PDFLUENT_MCP_MAX_BYTES, PDFLUENT_MCP_MAX_OUTPUT_CHARS

必要なもの

  • PyPIPythonのuvのインストール(uvxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "pdfluent": {
      "command": "uvx",
      "args": [
        "pdfluent-mcp",
        "--root"
      ],
      "env": {
        "PDFLUENT_MCP_MAX_PAGES": "your-value",
        "PDFLUENT_MCP_MAX_BYTES": "your-value",
        "PDFLUENT_MCP_MAX_OUTPUT_CHARS": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add pdfluent --env PDFLUENT_MCP_MAX_PAGES=your-value --env PDFLUENT_MCP_MAX_BYTES=your-value --env PDFLUENT_MCP_MAX_OUTPUT_CHARS=your-value -- uvx pdfluent-mcp --root

動かす前に、空欄の値を入力してください。

このサーバーは起動コマンドに値を入れる必要があるので、設定をコピーして入力してください。

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "pdfluent": {
      "command": "uvx",
      "args": [
        "pdfluent-mcp",
        "--root"
      ],
      "env": {
        "PDFLUENT_MCP_MAX_PAGES": "your-value",
        "PDFLUENT_MCP_MAX_BYTES": "your-value",
        "PDFLUENT_MCP_MAX_OUTPUT_CHARS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

このサーバーは起動コマンドに値を入れる必要があるので、設定をコピーして入力してください。

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "pdfluent": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "pdfluent-mcp",
        "--root"
      ],
      "env": {
        "PDFLUENT_MCP_MAX_PAGES": "your-value",
        "PDFLUENT_MCP_MAX_BYTES": "your-value",
        "PDFLUENT_MCP_MAX_OUTPUT_CHARS": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • PDFLUENT_MCP_MAX_PAGES env
    Pages one call may read (default 200).
  • PDFLUENT_MCP_MAX_BYTES env
    Largest document the server opens, in bytes (default 104857600).
  • PDFLUENT_MCP_MAX_OUTPUT_CHARS env
    Longest result one call returns, in characters (default 200000).

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント pdfluent で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

検索・AIの記憶のほかのサーバーとの比較i

  • このカテゴリのほかの7226件のうち0%よりスターが多い
  • このカテゴリのほかの7226件のうち93%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの7226件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

PDFluentは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.3.0)がレジストリに届いたのは一昨日です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。

代わりに使えるものは?

同じカテゴリには:Context7, Codebase Memory, Exa

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Context7

作者:upstash

Up-to-date docs for AI agents

パソコンでもクラウドでも★ 64,224MIT3 日前更新
インストール

Codebase Memory

作者:DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

パソコンで動く★ 48,148MIT20 日前更新
インストール

Exa

作者:exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

クラウドで動く★ 5,213MIT44 日前更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

pdfluent-mcp

An MCP server that lets your AI client read, search and fill local PDFs.

An MCP server for PDFluent. It lets Claude Desktop, Claude Code, Cursor, VS Code and any other MCP client read a local PDF as markdown, plain text, tables or positioned blocks, look up its metadata, search it, and fill its form fields into a new file.

Runs on your machine, no upload. It runs over stdio, one process per client, on the pdfluent Python package. Your documents stay on your machine. The server reads and writes only inside the directories you allow. Your documents are never uploaded.

Quick start

uvx pdfluent-mcp setup --root ~/Documents

This registers a stdio server named pdfluent in the user configs of Claude Desktop, Claude Code, Cursor and Codex, then tells you to restart the clients. pipx run pdfluent-mcp setup works the same way. Without --root, file access relies on client MCP roots or PDFLUENT_MCP_ROOTS (SETUP-001, SETUP-002).

Needs Python 3.10 or later and uv. uvx downloads the server and pdfluent on first use and caches them. The balanced quality tier needs model files; pdfluent models install downloads them once.

Tools

ToolWhat it doesExample prompt
extract_markdownThe document as markdown in reading order: headings, list items and tables. Running heads and page numbers are left out."Summarise ~/Documents/report.pdf."
extract_textThe plain text layer, page by page, each page behind ."Give me the raw text of pages 0 to 2 of contract.pdf."
extract_tablesOne entry per table with page, rows and header_rows."Pull the tables out of invoice.pdf."
extract_blocksPositioned blocks with kind, text, page, bbox and confidence. Also lists the pages whose text layer is missing."List every heading in manual.pdf with its page."
get_metadataPage count, title, author, dates, PDF version, encryption, form fields, signatures, bookmarks, and pages with no text layer."How many pages does scan.pdf have, and is it encrypted?"
searchThe pages that mention a query, with up to three snippets per page."Which pages of policy.pdf mention retention?"
list_form_fieldsEvery form field with name, type, value and page."Which fields does application.pdf have?"
fill_formFills the named fields and writes a new file. The input is never changed."Fill application.pdf with my name and address, save as application-filled.pdf."
vision_adviceOne entry per page with needs_vision and its reasons."Which pages of scan.pdf need a vision model?"

Page numbers are 0-based in every argument and result.

Tool arguments and result details

ToolReturns
extract_markdown(path, pages?, quality?)The document as markdown in reading order: headings, list items and tables. Running heads and page numbers are left out. quality is fast (default) or balanced.
extract_text(path, pages?)The plain text layer, page by page, each page behind .
extract_tables(path, pages?)tables: one entry per table with page, rows (lists of cell strings) and header_rows.
extract_blocks(path, pages?, include_furniture?)blocks: each with kind, text, page, bbox and confidence, plus level, ordinal or table-cell position where they apply. pages_needing_vision: the pages whose text layer is missing.
get_metadata(path)Page count, title, author, dates, PDF version, encryption, whether the document has form fields, how many signatures and bookmarks it has, and which pages have no text layer.
search(path, query)The pages that mention query, with up to three snippets per page.
list_form_fields(path)Every form field with name, type, value and page.
fill_form(path, values, out_path, overwrite?)Fills the named fields and writes a new file at out_path. The input is never changed; an existing out_path is refused unless overwrite is true, and a symbolic link there is always refused.
vision_advice(path)advice: one entry per page with needs_vision and its reasons.

confidence is the probability of the learned model that decided a block's kind; it is null where no model decided it, and null means unknown, not low.

Install per client

Replace /path/to/documents with the directory your PDFs live in.

Claude Desktop

Add to claude_desktop_config.json and restart Claude Desktop:

{

"mcpServers": { "pdfluent": { "command": "uvx", "args": ["pdfluent-mcp", "--root", "/path/to/documents"] } } }

Config file location and troubleshooting

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json, Windows: %APPDATA%\Claude\claude_desktop_config.json.

If Claude Desktop does not find uvx, write its full path (which uvx) in command.

Claude Code
claude mcp add pdfluent -- uvx pdfluent-mcp --root /path/to/documents

Project setup for a team, and the Claude skill

Claude Code also offers its working directory as an MCP root, so inside a project claude mcp add pdfluent -- uvx pdfluent-mcp is enough. For a team, put this in the project's .mcp.json:

{

"mcpServers": { "pdfluent": { "type": "stdio", "command": "uvx", "args": ["pdfluent-mcp"] } } }

To tell Claude when to reach for these tools, copy skills/pdfluent from this repository to ~/.claude/skills/pdfluent (every project) or to .claude/skills/pdfluent in one project.

Cursor

Add to Cursor (then change /path/to/documents), or add to ~/.cursor/mcp.json or the project's .cursor/mcp.json:

{

"mcpServers": { "pdfluent": { "type": "stdio", "command": "uvx", "args": ["pdfluent-mcp", "--root", "/path/to/documents"] } } }

VS Code

Install in VS Code, or from a terminal:

code --add-mcp '{"name":"pdfluent","type":"stdio","command":"uvx","args":["pdfluent-mcp","--root","/path/to/documents"]}'

Workspace config

Or add to .vscode/mcp.json in the workspace (note the key is servers):

{

"servers": { "pdfluent": { "type": "stdio", "command": "uvx", "args": ["pdfluent-mcp", "--root", "/path/to/documents"] } } }

Codex

Add to ~/.codex/config.toml:

[mcp_servers.pdfluent]

command = "uvx" args = ["pdfluent-mcp", "--root", "/path/to/documents"]

One-click install for Cursor and VS Code registers the server with a placeholder root that you then change.

Reference

Setup command: flags, backups, uninstall

  • --root DIR (repeatable) is added to the saved command for each directory you name, for example uvx pdfluent-mcp setup --root ~/Documents.
  • --dry-run shows what would change and writes nothing.
  • Before it replaces a config file, setup saves the previous file next to it as .pdfluent-backup- and prints the path.
  • --client claude-desktop|claude-code|cursor|codex limits it to some clients (repeatable).
  • uvx pdfluent-mcp uninstall (or setup --uninstall) removes only the pdfluent entry, and only when it was written by pdfluent-mcp (or with --force). It does not remove the Python package.

Close the clients before you run setup or uninstall. Files are replaced atomically, but no portable call lets setup detect a client that saves the same file in the last instant; a save in that gap can be lost, and where hard links are unavailable the backup is a plain copy and the gap is wider.

Setup keeps unrelated settings and servers, preserves TOML comments, and refuses malformed configs and symbolic links. A different existing pdfluent entry is left alone unless you pass --force (SETUP-003). The saved launcher uses the absolute uvx path when found, otherwise the current Python interpreter, which must stay installed (SETUP-004).

Config files used: Claude Desktop's platform config (see above), Claude Code's ~/.claude.json, Cursor's ~/.cursor/mcp.json, and Codex's ~/.codex/config.toml (CODEX_HOME is respected).

Install into your own environment

pip install pdfluent-mcp

pdfluent-mcp --root ~/Documents

Allowed roots and limits

The server touches nothing outside its roots. Give them with --root (repeat for more than one), with PDFLUENT_MCP_ROOTS (:-separated, ; on Windows), or let the client offer them: Claude Code sends its working directory and --add-dir directories as MCP roots. A server with no root from any of these answers every call with a message saying so. Symlinks are resolved before the check, so a link inside a root cannot point outside it.

A root is as wide as the directory it names. A client that offers /, ~ or a drive as an MCP root widens the server to everything the user can read; if that is not what you want, start the server with --root on the folder your PDFs live in and keep the client's roots narrow.

Three more limits: --max-pages (default 200) is how many pages one call returns, so a long document is read in windows through pages (the engine still parses the whole document for every window; the cap bounds the output, not the work); --max-bytes (default 100 MiB) is the largest document the server opens; --max-output-chars (default 200000) is the longest result one call returns, after which it is cut and says so. All three also read from PDFLUENT_MCP_MAX_PAGES, PDFLUENT_MCP_MAX_BYTES and PDFLUENT_MCP_MAX_OUTPUT_CHARS.

Claude plugin and data handling

The repository is also a Claude plugin (.claude-plugin/plugin.json). It bundles the pdfluent skill from skills/ and starts the local MCP server with uvx pdfluent-mcp==0.3.0 over stdio, so the plugin runs one pinned PyPI package and nothing else. A local MCP server loads in Claude Code and in Cowork sessions on your computer; chat on claude.ai ignores it.

What the plugin does with data: the server reads PDFs only inside the directories you allow,

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く