mcp-jinaai-search
A Model Context Protocol (MCP) server for integrating Jina.aiβs Search API with LLMs. This server provides efficient and comprehensive web search capabilities, optimised for retrieving clean, LLM-friendly content from the web.
Features
- π Advanced web search through Jina.ai Search API
- π Fast and efficient content retrieval
- π Clean text extraction with preserved structure
- π§ Content optimised for LLMs
- π Support for various content types including documentation
- ποΈ Built on the Model Context Protocol
- π Configurable caching for performance
- πΌοΈ Optional image and link gathering
- π Localisation support through browser locale
- π― Token budget control for response size
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-search": {
"command": "node",
"args": ["-y", "mcp-jinaai-search"],
"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-search": {
"command": "wsl.exe",
"args": [
"bash",
"-c",
"JINAAI_API_KEY=your-jinaai-api-key npx mcp-jinaai-search"
]
}
}
}
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:
search
Search the web and get clean, LLM-friendly content using Jina.ai Reader. Returns top 5 results with URLs and clean content.
Parameters:
query
(string, required): Search queryformat
(string, optional): Response format (βjsonβ or βtextβ). Defaults to βtextβno_cache
(boolean, optional): Bypass cache for fresh results. Defaults to falsetoken_budget
(number, optional): Maximum number of tokens for this requestbrowser_locale
(string, optional): Browser locale for rendering contentstream
(boolean, optional): Enable stream mode for large pages. Defaults to falsegather_links
(boolean, optional): Gather all links at the end of response. Defaults to falsegather_images
(boolean, optional): Gather all images at the end of response. Defaults to falseimage_caption
(boolean, optional): Caption images in the content. Defaults to falseenable_iframe
(boolean, optional): Extract content from iframes. Defaults to falseenable_shadow_dom
(boolean, optional): Extract content from shadow DOM. Defaults to falseresolve_redirects
(boolean, optional): Follow redirect chains to final URL. Defaults to true
Development
Setup
- Clone the repository
- Install dependencies:
pnpm install
- Build the project:
pnpm run build
- Run in development mode:
pnpm run dev
Publishing
- Create a changeset:
pnpm changeset
- Version the package:
pnpm version
- Build and publish:
pnpm release
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
MIT License - see the LICENSE file for details.
Acknowledgments
- Built on the Model Context Protocolβ
- Powered by Jina.ai Search APIβ