Skip to main content
Glama
trafflux

PDF Reader MCP Server

by trafflux

PDFリーダーMCPサーバー

ローカル ファイルと URL の両方をサポートし、PDF ファイルからテキストを読み取って抽出するためのツールを提供するモデル コンテキスト プロトコル (MCP) サーバー。

著者

フィリップ・ヴァン・デ・ウォーカー
メールアドレス: philip.vandewalker@gmail.com
GitHub: https://github.com/trafflux

Related MCP server: MCP PDF Server

特徴

  • ローカルのPDFファイルからテキストコンテンツを読み取る

  • PDF URL からテキスト コンテンツを読み取る

  • 破損または無効な PDF のエラー処理

  • ローカル PDF にアクセスするためのボリュームマウント

  • PDFエンコードの自動検出

  • 標準化されたJSON出力形式

インストール

  1. リポジトリをクローンします。

git clone https://github.com/trafflux/pdf-reader-mcp.git
cd pdf-reader-mcp
  1. Docker イメージをビルドします。

docker build -t mcp/pdf-reader .

使用法

サーバーの実行

ローカル PDF ファイルにアクセスしてサーバーを実行するには:

docker run -i --rm -v /path/to/pdfs:/pdfs mcp/pdf-reader

/path/to/pdfs PDF ファイル ディレクトリへの実際のパスに置き換えます。

ローカル PDF ファイルを使用しない場合:

docker run -i --rm mcp/pdf-reader

MCP構成

MCP 設定構成に追加します:

{
  "mcpServers": {
    "pdf-reader": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-v",
        "/path/to/pdfs:/pdfs",
        "mcp/pdf-reader"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}

ローカルファイルなしの PDF ファイル:

{
  "mcpServers": {
    "pdf-reader": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/pdf-reader"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

利用可能なツール

  1. read_local_pdf

    • 目的: ローカルのPDFファイルからテキストコンテンツを読み取る

    • 入力:

      {
        "path": "/pdfs/document.pdf"
      }
    • 出力:

      {
        "success": true,
        "data": {
          "text": "Extracted content..."
        }
      }
  2. read_pdf_url

    • 目的: PDF URL からテキスト コンテンツを読み取る

    • 入力:

      {
        "url": "https://example.com/document.pdf"
      }
    • 出力:

      {
        "success": true,
        "data": {
          "text": "Extracted content..."
        }
      }

エラー処理

サーバーは、明確なエラー メッセージを使用してさまざまなエラー ケースを処理します。

  • 無効または破損したPDFファイル

  • 不足しているファイル

  • 失敗したURLリクエスト

  • 権限の問題

  • ネットワーク接続の問題

エラー応答は次の形式に従います。

{
  "success": false,
  "error": "Detailed error message"
}

依存関係

  • Python 3.11以上

  • PyPDF2: PDF解析とテキスト抽出

  • リクエスト: URLからPDFを取得するためのHTTPクライアント

  • MCP SDK: モデルコンテキストプロトコルの実装

プロジェクト構造

.
├── Dockerfile          # Container configuration
├── README.md          # This documentation
├── requirements.txt   # Python dependencies
└── src/
    ├── __init__.py    # Package initialization
    └── server.py      # Main server implementation

ライセンス

Copyright 2025 フィリップ・ヴァン・デ・ウォーカー

Apacheライセンス バージョン2.0(以下「ライセンス」)に基づいてライセンスされています。このファイルは、ライセンスに従わない限り使用できません。ライセンスのコピーは以下から入手できます。

http://www.apache.org/licenses/LICENSE-2.0

適用法によって義務付けられている場合、または書面による合意がある場合を除き、本ライセンスに基づいて配布されるソフトウェアは、「現状有姿」で配布され、明示的または黙示的を問わず、いかなる種類の保証または条件も付与されません。本ライセンスに基づく許可および制限事項を規定する具体的な文言については、本ライセンスを参照してください。

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

接触

ご質問、問題、または貢献については、Philip Van de Walker までお問い合わせください。

-
security - not tested
F
license - not found
-
quality - not tested

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/trafflux/pdf-reader-mcp'

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