Skip to Content
MCP ServersCommunitymcp-jinaai-reader

mcp-jinaai-reader

View original on GitHub 

A Model Context Protocol (MCP) server for integrating Jina.ai’s Reader API with LLMs. This server provides efficient and comprehensive web content extraction capabilities, optimized for documentation and web content analysis.

Features

  • πŸ“š Advanced web content extraction through Jina.ai Reader API
  • πŸš€ Fast and efficient content retrieval
  • πŸ“„ Complete text extraction with preserved structure
  • πŸ”„ Clean format optimized for LLMs
  • 🌐 Support for various content types including documentation
  • πŸ—οΈ Built on the Model Context Protocol

Configuration

This server requires configuration through your MCP client. Here are examples for different environments:

Cline Configuration

Add this to your Cline MCP settings:

{ "mcpServers": { "jinaai-reader": { "command": "node", "args": ["-y", "mcp-jinaai-reader"], "env": { "JINAAI_API_KEY": "your-jinaai-api-key" } } } }

Claude Desktop with WSL Configuration

For WSL environments, add this to your Claude Desktop configuration:

{ "mcpServers": { "jinaai-reader": { "command": "wsl.exe", "args": [ "bash", "-c", "JINAAI_API_KEY=your-jinaai-api-key npx mcp-jinaai-reader" ] } } }

Environment Variables

The server requires the following environment variable:

  • JINAAI_API_KEY: Your Jina.ai API key (required)

API

The server implements a single MCP tool with configurable parameters:

read_url

Convert any URL to LLM-friendly text using Jina.ai Reader.

Parameters:

  • url (string, required): URL to process
  • no_cache (boolean, optional): Bypass cache for fresh results. Defaults to false
  • format (string, optional): Response format (β€œjson” or β€œstream”). Defaults to β€œjson”
  • timeout (number, optional): Maximum time in seconds to wait for webpage load
  • target_selector (string, optional): CSS selector to focus on specific elements
  • wait_for_selector (string, optional): CSS selector to wait for specific elements
  • remove_selector (string, optional): CSS selector to exclude specific elements
  • with_links_summary (boolean, optional): Gather all links at the end of response
  • with_images_summary (boolean, optional): Gather all images at the end of response
  • with_generated_alt (boolean, optional): Add alt text to images lacking captions
  • with_iframe (boolean, optional): Include iframe content in response

Development

Setup

  1. Clone the repository
  2. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Run in development mode:
npm run dev

Publishing

  1. Update version in package.json
  2. Build the project:
npm run build
  1. Publish to npm:
npm publish

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT License - see the LICENSE file for details.

Acknowledgments

Last updated on