MCP server for PageIndex that wraps a remote PageIndex MCP server, providing tools for document processing and resource management with OAuth authentication
Single tool 'process_document' with significant quality gaps. Tool description is present but generic (77 chars). Input schema is visible in JSON but lacks proper parameter descriptions and type constraints. The tool accepts 'url' (required) and 'folder_id' (optional, nullable) but provides minimal guidance on expected formats, valid folder ID values, or how the tool behaves. Parameter descriptions are absent from the schema (only brief type hints visible). No output schema is documented. Error handling is basic, the server catches errors and returns JSON but provides no recovery guidance. No validation of URL formats, file types (claims PDF-only support but schema has no regex constraint), or folder_id patterns. No examples of expected invocations or response structures. Naming is acceptable ('process_document' is a verb-noun pair) but descriptions lack actionable detail about what happens, when to call this vs. alternatives, and what the agent should expect.
Simplified process_document tool that handles only PDF files. Supports both URLs and local file paths with inline file handling
Missing parameter descriptions in schema. 'url' parameter lacks guidance on format (URL vs. local file path distinction is only in tool description, not param description). 'folder_id' parameter has no description explaining valid values, constraints, or what 'root' means.
No output schema documented. Tool description states 'Simplified process_document tool' but does not specify what the agent will receive in response, no field names, types, or structure. LLMs cannot plan downstream actions without knowing the response schema.
Tool description claims 'PDF files' support but schema has no constraints (no regex pattern, no enum, no format validation). LLMs cannot self-validate input and may pass non-PDF files, causing errors.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 49 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 42 | - | v1 |
Generic error handling. CallToolRequestSchema catch block returns JSON with error message but no recovery guidance. If URL is invalid or folder_id does not exist, LLM receives only 'error: ...' with no suggestion to validate input or retry differently.
'folder_id' nullable parameter is optional but no clear description of behavior when omitted. Tool description mentions 'use user's default folder' but the parameter description is missing entirely from schema. LLMs cannot reliably infer default behavior.
Tool marked as WRITE risk but no dry-run or confirmation mechanism. Agent cannot preview the action before executing. For a tool that processes and stores documents (potentially destructive or irreversible), lack of confirmation pattern is a gap.