🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@sylphx/smart-reader-mcp

Package Overview
Dependencies
Maintainers
2
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@sylphx/smart-reader-mcp

Prism — local media router for agents (Sylphx). Sniff + delegate to Citra/Iris/Cue. One MCP call reads PDF, image, or video by sniffing format and delegating to Sylphx Reader siblings.

latest
Source
npmnpm
Version
0.2.11
Version published
Maintainers
2
Created
Source

Prism

One beam in. Right instrument out.

Prism (transitional package @sylphx/smart-reader-mcp) — sniff + route local media to Citra / Iris / Cue.

smart-reader-mcp — Sylphx Mark banner

Your agent found a file. Did it pick the right reader?

One MCP call reads PDF, image, or video. Prism sniffs format, delegates to the matching Sylphx Reader sibling, and returns a provenance envelope you can trust — no manual format routing required.

npm version License CI/CD TypeScript

Local-first · One smart read_media call · Delegation provenance envelope · 50+ tests

SOTA family roadmap: docs/roadmap/sota-family-roadmap.md.

⭐ Star this repo if agents should read any media file without you wiring format switches. · Quick start · See it work · Why not manual format routing?

Product docs

DocPurpose
docs/POSITIONING.mdStrategic positioning
docs/COMPETITIVE.mdPeer anchors and wedge
docs/EVIDENCE_CONTRACT.mdEvidence = result contract
docs/TOOL_SURFACE.mdFew clear tools policy
docs/PRODUCT_INDEPENDENCE.mdThis repo is SSOT
docs/IPPB.mdIndependent public product bar
docs/PUBLISH.mdnpm/git publish status

The problem

Agents receive files with misleading extensions, mixed portfolios, and formats that need different parsers. PDF needs evidence twins. Images need metadata and OCR geometry. Videos need ffprobe timelines — not one-size-fits-all text dumps.

Most stacks force the agent or the human to branch on extension, install the right tool, and hope delegation still returns citeable provenance. Wrong reader, wrong schema, silent partial reads. Then citations break — quietly.

Smart Reader MCP is built for the moment your agent needs one read tool that sniffs format and delegates with proof.

Why not manual format routing?

Typical routing pathSmart Reader MCP
Agent guesses format from extensionMagic-byte sniffing with extension fallback
Separate MCP configs per formatOne read_media call delegates to the right sibling
Opaque passthrough resultsNormalized envelope: source_path, detected_format, delegated_tool, raw_result
Re-implemented parsers in one repoDelegates to @sylphx/pdf-reader-mcp, @sylphx/image-reader-mcp, @sylphx/video-reader-mcp
Cloud routing servicesLocal-first stdio delegation to sibling packages
Ship and pray50+ tests on sniffing, mislabeled routing, doctor, release gate, and delegation

See it work

Install once. Call once.

npm install -g @sylphx/smart-reader-mcp
prism doctor
# brand bin + MCP
claude mcp add smart-reader -- npx @sylphx/smart-reader-mcp

Install (30 seconds)

SurfaceCommand
npm globalnpm i -g @sylphx/smart-reader-mcp
brand binprism
MCPnpx @sylphx/smart-reader-mcp
{
  "path": "/absolute/path/to/report.pdf"
}

read_media sniffs the file, spawns the matching sibling MCP server, and returns a provenance envelope:

{
  "source_path": "/absolute/path/to/report.pdf",
  "detected_format": "pdf",
  "delegated_tool": "read_pdf",
  "raw_result": {
    "page_count": 12,
    "title": "Q3 Report",
    "trust_report": { "warnings": [] }
  }
}

The raw_result field is the passthrough payload from the delegated reader (read_pdf, read_image, or read_video). Install the siblings you need:

npm install @sylphx/pdf-reader-mcp @sylphx/image-reader-mcp @sylphx/video-reader-mcp

Supported formats:

  • PDF: .pdf
  • Image: .png, .jpg, .jpeg, .gif, .webp, .tif, .tiff
  • Video: .mp4, .m4v, .mkv, .mov, .webm

Product independence

This repository is product SSOT for Prism. Sibling readers (PDF/image/video) are separate repositories; composition is via public contracts only — not a monorepo.

MCP Tool Surface

ToolUse it when the agent needs to...
read_mediaRead a local PDF, image, or video by sniffing format and delegating to the matching Sylphx Reader sibling.

Quick Start

Claude Code

claude mcp add smart-reader -- npx @sylphx/smart-reader-mcp

Claude Desktop

Add this to claude_desktop_config.json:

{
  "mcpServers": {
    "smart-reader": {
      "command": "npx",
      "args": ["-y", "@sylphx/smart-reader-mcp"]
    }
  }
}

Any MCP Client

npx @sylphx/smart-reader-mcp

Node.js >=22.13 is required. Delegation resolves locally installed sibling packages first, then falls back to npx -y @sylphx/<reader>-mcp.

Security model

  • Local paths onlyread_media resolves files on disk; no remote fetch by default.
  • Magic-byte sniffing — format detection uses file content, not extension alone.
  • Sibling delegation — spawns known Sylphx Reader packages (@sylphx/pdf-reader-mcp, etc.) via npx -y; no arbitrary executables.
  • Provenance envelopedetected_format, delegated_tool, and source_path are always returned for audit.

Release proof

Claims are backed by CI benchmark:release-gate and the shipped-path matrix (Rust sniff/policy route).

bun run benchmark:release-gate

Artifact: benchmark-artifacts/smart_reader_release_gate.json — must report status: passed before release.

Development

git clone https://github.com/SylphxAI/smart-reader-mcp.git
cd smart-reader-mcp
bun install
bun run build
bun test
bun run doctor
bun run benchmark:release-gate

Useful checks:

bun run check
bun run typecheck
bun run validate
bun run benchmark:release-gate

Example read_media requests live in examples/.

Support

Help this reach more builders

If manual format routing has wasted your MCP configs, your agent prompts, or your trust in mixed-media workflows, you are exactly who this project is for.

⭐ Star the repo — it is the fastest way to help more agent builders find one-call media reading. Share it in your MCP client setup, team wiki, or agent stack README.

Discovery (in progress)

ChannelStatus
Glama MCP directoryListed — claim server for full discoverability
Official MCP RegistryListed — io.github.SylphxAI/smart-reader-mcp @ v0.1.1
TensorBlock MCP Index PR #1113Open — multimedia/document processing listing
MCP servers community issue #4500Open — community server highlight
mcp.so listing issue #3068Open — directory submission request
mcpservers.org submitNot listed yet — free web-form submission

Know another MCP directory? Open an issue with the link.

License

MIT © SylphxAI

Compose

Composition doctrine — SDK, not MCP, for product integration · Prism.composeVideo merges Cue structure + Iris L2 objects via SDK.

Keywords

mcp

FAQs

Package last updated on 03 Aug 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts