Skip to main content
Glama

File AI

Read-only document awareness MCP server for agents. File AI uses Flyfish File Viewer core as the source of truth for format recognition, then turns local files into a stable profile, anchors, blocks, chunks, outline, search results, and contextual snippets so an agent can understand document content without reverse-engineering PDF, OOXML, spreadsheet, email, or archive internals.

MCP Registry name: io.github.flyfish-dev/file-ai

Install

Use it directly with npx:

npx -y @flyfish-dev/file-ai

Or install it globally:

npm install -g @flyfish-dev/file-ai
file-ai --transport stdio

Related MCP server: RAG Document Server

MCP Client Config

Stdio:

{
  "mcpServers": {
    "file-ai": {
      "command": "npx",
      "args": ["-y", "@flyfish-dev/file-ai"]
    }
  }
}

Streamable HTTP:

npx -y @flyfish-dev/file-ai --transport http --host 127.0.0.1 --port 8765

Endpoint:

http://127.0.0.1:8765/mcp

Tools

  • doc_analyze: parse a local file and cache a document index.

  • doc_read: read blocks, chunks, or anchors from an existing index or path.

  • doc_search: search cached content with source anchors.

  • doc_context: retrieve nearby blocks around an anchor or query.

  • doc_list_formats: list File Viewer core registry formats, all supported extensions, renderer capabilities, and File AI extractor coverage.

Resources

  • doc://{indexId}/profile

  • doc://{indexId}/outline

  • doc://{indexId}/chunks

Supported Files

File AI recognizes formats through @file-viewer/core/headless, currently covering 206 registered extensions. profile.format is therefore aligned with the same renderer selection used by Flyfish File Viewer.

Content extraction is a separate layer. File AI provides structured awareness for text/code/Markdown/JSON, PDF text, DOCX, XLSX/CSV, PPTX, EML, and archive manifests. Other File Viewer renderer-only formats such as CAD, 3D, media, image, geospatial, drawing, ebook, and data assets are still recognized in profile.format; when no structured text extractor exists yet, File AI returns a profile plus best-effort metadata/text and explicit warnings in profile.warnings and profile.extraction.

Every content block carries an anchor such as a page, slide, worksheet, row range, nested path, or byte/text location. Agents should cite returned anchorId values when making document-grounded claims.

Development

pnpm install
pnpm build
pnpm test
pnpm validate:skill

Run locally:

pnpm dev -- --transport stdio
pnpm dev -- --transport http --port 8765

Publishing

The package includes:

  • npm metadata for @flyfish-dev/file-ai

  • MCP Registry metadata in server.json

  • GitHub Actions workflow .github/workflows/publish-mcp.yml

Release flow:

git tag v0.1.0
git push origin v0.1.0

The workflow publishes the npm package first, then publishes io.github.flyfish-dev/file-ai to the official MCP Registry through GitHub OIDC. The repository must have an NPM_TOKEN secret that can publish @flyfish-dev/file-ai.

The server is read-only. It does not mutate source documents.

Available Tools

5 tools
doc_analyzeAnalyze documentB

Parse a local document into a read-only profile, anchors, outline, blocks, and chunks for agent context.

Inputs: path (required), refresh, maxTextLength, chunkSize, +1 more.

doc_contextRead contextual document windowC

Return nearby blocks around an anchor or the first anchors matching a query.

Inputs: indexId, path, anchorId, query, +3 more.

doc_list_formatsList supported formatsB

List Flyfish File Viewer known formats and document-engine extractors.

Inputs: no named parameters.

doc_readRead document index contentB

Read blocks, chunks, or anchors from a cached index without inspecting source document internals.

Inputs: indexId, path, anchorId, blockId, +2 more.

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 5 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: analyze parses documents, context retrieves nearby blocks, list_formats lists supported formats, read reads blocks, and search searches. No overlapping functionality.

    Naming Consistency5/5

    All tools follow a consistent 'doc_verb' pattern (doc_analyze, doc_context, doc_list_formats, doc_read, doc_search), making the naming predictable and easy to understand.

    Tool Count4/5

    With 5 tools, the server is well-scoped for a document analysis agent. While slightly minimal, each tool earns its place and the count is reasonable for the domain.

    Completeness4/5

    The tool surface covers core operations: parsing, reading, searching, and context retrieval. Missing features like document listing or updates, but for a read-only analysis server, it is largely complete.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      An MCP server that lets AI assistants read and visually analyze local documents — PDFs, Excel spreadsheets, CSV files, Word documents, PowerPoint presentations, and images.
      4
      57 npm
      48 PyPI
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      MCP server that exposes one or more documentation folders (Markdown, MDX, TXT) to AI agents, enabling listing, reading, and searching of documentation files.
      -
    • F
      license
      Not graded
      quality
      C
      maintenance
      An MCP server that serves company documentation from a Markdown folder, exposing read-only search and fetch tools for agents to discover and retrieve authoritative documents.
      -