Skip to main content
Glama
PageIndex Light MCP

PageIndex Light MCP

by BukeLy

PageIndex Light MCP

Python FastMCP MCP License

Agentic PDF Search via MCP — Inspired by PageIndex

Vectorless, reasoning-based document retrieval that thinks like a human


Overview

PageIndex Light MCP brings agentic search capabilities to your PDF documents through the Model Context Protocol. Instead of traditional vector similarity, it leverages LLM reasoning for intelligent, human-like document navigation.

Inspired by VectifyAI/PageIndex and pageindex-mcp.

Related MCP server: asset-aware-mcp

Features

  • Agentic Search — LLM-powered semantic search through document structure

  • MCP Sampling — Native MCP protocol sampling support

  • LLM Fallback — Auto-fallback to OpenAI-compatible APIs for non-sampling clients

  • OCR Fallback — Automatic OCR for scanned PDFs

Tools

Tool

Description

get_index

Get PDF index with semantic search support

get_detail

Retrieve detailed content of a specific page

How It Works

flowchart TB
    subgraph Input
        A[PDF File] --> B{Text Extraction}
    end

    subgraph TextExtraction["Text Extraction"]
        B -->|Success| C[Raw Text]
        B -->|Empty/Minimal| D{OCR Configured?}
        D -->|Yes| E[Vision LLM OCR]
        D -->|No| C
        E --> C
    end

    subgraph Indexing
        C --> F[LLM Summarization]
        F -->|Per Page| G[Page Summaries]
        G --> H[(Cached Index)]
    end

    subgraph Search["Agentic Search"]
        I[User Query] --> J{Has Query?}
        J -->|No| K[Return Full Index]
        J -->|Yes| L[LLM Reasoning]
        H --> L
        L --> M[Ranked Results]
    end

    subgraph LLMProvider["LLM Provider"]
        N{MCP Sampling?}
        N -->|Supported| O[MCP Client LLM]
        N -->|Not Supported| P[Fallback LLM API]
    end

    F -.-> N
    L -.-> N

Quick Start

Claude Desktop / Claude Code

Add to your MCP config:

{
  "mcpServers": {
    "pageindex": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/pageindex-light-mcp", "server.py"],
      "env": {
        "PAGEINDEX_LLM_BASE_URL": "https://api.openai.com/v1",
        "PAGEINDEX_LLM_API_KEY": "sk-xxx",
        "PAGEINDEX_LLM_MODEL": "gpt-4o-mini",
        "PAGEINDEX_OCR_BASE_URL": "https://api.openai.com/v1",
        "PAGEINDEX_OCR_API_KEY": "sk-xxx",
        "PAGEINDEX_OCR_MODEL": "gpt-4o-mini"
      }
    }
  }
}

Environment Variables

Both configurations are optional and independent:

Variable

Purpose

Required

PAGEINDEX_LLM_*

Fallback for non-Sampling MCP clients

Optional

PAGEINDEX_OCR_*

Fallback for scanned PDFs (when text extraction fails)

Optional

# LLM Config — Used when MCP client doesn't support Sampling
PAGEINDEX_LLM_BASE_URL=https://api.openai.com/v1
PAGEINDEX_LLM_API_KEY=sk-xxx
PAGEINDEX_LLM_MODEL=gpt-4o-mini

# OCR Config — Used when PDF text extraction returns empty/minimal content
PAGEINDEX_OCR_BASE_URL=https://api.openai.com/v1
PAGEINDEX_OCR_API_KEY=sk-xxx
PAGEINDEX_OCR_MODEL=gpt-4o-mini  # Any vision-capable model

License

MIT

Available Tools

2 tools
get_detailA

获取 PDF 某一页的详细内容

Args: file_path: PDF 文件的完整路径 page: 页码(从 1 开始)

Inputs: page (required), file_path (required). Returns: object

get_indexA

获取 PDF 文件索引,支持语义搜索

Args: file_path: PDF 文件的完整路径 query: 搜索查询(可选)。如果提供,返回最相关的页面;否则返回全部索引 top_k: 返回结果数量,默认 5(仅在有 query 时生效)

Inputs: file_path (required), query, top_k. Returns: object

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 2 tools

    Disambiguation5/5

    The two tools have clearly distinct purposes: one retrieves detailed content for a specific page, the other returns an index with optional semantic search. No overlap or ambiguity exists.

    Naming Consistency5/5

    Both tools follow the same 'get_' prefix followed by a noun, perfectly consistent and predictable.

    Tool Count3/5

    Only two tools exist, which is at the thin end of the range. While appropriate for a 'light' server, the scope is minimal and may feel incomplete for broader PDF workflows.

    Completeness4/5

    The core workflow of indexing and retrieving page details is covered. Minor gaps exist such as no explicit metadata retrieval or index update, but these can be worked around.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      C
      quality
      B
      maintenance
      Enables AI agents to precisely retrieve and analyze PDF assets (tables, figures, sections) via MCP, with knowledge graph integration for medical research.
      30
      50 PyPI
      Apache 2.0
    • A
      license
      Not graded
      quality
      B
      maintenance
      A local MCP server for intelligent PDF management that converts papers to markdown and enables hybrid grep and semantic search, allowing token-efficient exploration of academic documents.
      6
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A local-first MCP server for building and querying PDF knowledge bases. It indexes PDFs into DuckDB and exposes evidence-grounded retrieval tools to separate corpus-backed answers from independent reasoning.
      16 npm
      3
      MIT