MCP
jina-ai · jina-ai/MCP
Một MCP server từ xa chính thức của Jina AI cung cấp các công cụ cho tác nhân AI để đọc trang web, tìm kiếm nội dung, tạo embeddings và rerank kết quả bằng các API của Jina AI.
Official Jina AI Remote MCP Server
Xem trước
Bạn có thể làm gì với nó
- Yêu cầu một tác nhân tóm tắt nội dung từ bất kỳ trang web hoặc PDF nào bằng API Reader.
- Tích hợp khả năng tìm kiếm nâng cao vào một tác nhân AI để tìm thông tin liên quan.
- Nâng cao khả năng hiểu văn bản của tác nhân thông qua embeddings để có ngữ cảnh tốt hơn.
Kiểm tra an toàn
Dùng được, nhưng nên đọc ghi chú trước.
- ●Trình cài đặt tải script từ xa và chạy thẳng bằng shell.
README.md
Quét tự động các file trong repo. Luôn xem lại code trước khi chạy.
Trích từ README
Jina AI Remote MCP Server
A remote Model Context Protocol (MCP) server for the Jina Reader, Search, Embeddings and Reranker APIs:
Usage
[!WARNING] Some clients do not support env variable, so you may need to replace
${JINA_API_KEY}below to a hardcoded real API keyjina_xxx.
For client that supports remote MCP server:
{
"mcpServers": {
"jina-mcp-server": {
"url": "https://mcp.jina.ai/v1",
"headers": {
"Authorization": "Bearer ${JINA_API_KEY}" // optional
}
}
}
}
For Claude Code:
claude mcp add -s user --transport http jina https://mcp.jina.ai/v1 \
--header "Authorization: Bearer ${JINA_API_KEY}"
For OpenAI Codex: find ~/.codex/config.toml and add the following:
[mcp_servers.jina-mcp-server]
command = "npx"
args = [
"-y",
"mcp-remote",
"https://mcp.jina.ai/v1",
"--header",
"Authorization: Bearer ${JINA_API_KEY}"]
For client that does not support remote MCP server yet, you need mcp-remote a local proxy to connect to the remote MCP server.
{
"mcpServers": {
"jina-mcp-server": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.jina.ai/v1",
"--header",
"Authorization: Bearer ${JINA_API_KEY}"
]
}
}
}
Available tools
| Tool | Description | Is Jina API Key Required? |
|---|---|---|
primer | Get current contextual information for localized, time-aware responses | No |
read_url | Read a web page or PDF as markdown. Pass question for passages instead of the full body via Reader API | Optional* |
capture_screenshot_url | Capture a screenshot of a web page via Reader API | Optional* |
guess_datetime_url | Guess a page's publish or last-update datetime, with a confidence score | No |
search_web | Search the web. Returns titles, URLs and engine snippets via Reader API | Yes |
search_arxiv | Search academic papers and preprints on arXiv repository via Reader API | Yes |
search_ssrn | Search academic papers on SSRN (Social Science Research Network) via Reader API | Yes |
search_images | Search the web for images via Reader API | Yes |
search_jina_blog | Search Jina AI news and blog posts at jina.ai/news | No |
sort_by_relevance | Rerank documents by relevance to a query via Reranker API | Yes |
deduplicate_strings | Get top-k semantically unique strings via Embeddings API and submodular optimization | Yes |
extract_pdf | Extract figures, tables, and equations from PDF documents (arXiv papers or any PDF URL) using layout detection | Yes |
Optional tools work without an API key at rate limits. Use a key for higher limits. Free keys: https://jina.ai
Tool Filtering before Registering
Registering a tool costs context tokens for its name, description and schema whether or not it is called. With 12 tools, that budget is spent before the first request.
Filtering server-side through query parameters on the endpoint URL (/v1?...) excludes tools before registration, so the client never sees them.
Query Parameters
| Parameter | Description | Example |
|---|---|---|
exclude_tools | Comma-separated tool names to exclude | exclude_tools=search_web,search_arxiv |
include_tools | Comma-separated tool names to include | include_tools=read_url,search_web |
exclude_tags | Comma-separated tags to exclude | exclude_tags=search,rerank |
include_tags | Comma-separated tags to include | include_tags=search,read |
max_tokens | Cap read_url response size in tokens. 0 disables truncation | max_tokens=50000 |
Available Tags
| Tag | Tools |
|---|---|
search | search_web, search_arxiv, search_ssrn, search_images, search_jina_blog |
read | read_url, capture_screenshot_url |
utility | primer, guess_datetime_url, extract_pdf |
rerank | sort_by_relevance, deduplicate_strings |
Precedence
Filters are applied in this order (highest to lowest priority):
exclude_tools- Always excludes specified toolsexclude_tags- Excludes tools in specified tagsinclude_tools- Includes specified toolsinclude_tags- Starts with only tools in specified tags
Examples
Exclude the rerank and utility tags:
{
"mcpServers": {
"jina-mcp-server": {
"url": "https://mcp.jina.ai/v1?exclude_tags=rerank,utility",
"headers": {
"Authorization": "Bearer ${JINA_API_KEY}"
}
}
}
}
Only include search and read tools:
{
"mcpServers": {
"jina-mcp-server": {
"url": "https://mcp.jina.ai/v1?include_tags=search,read",
"headers": {
"Authorization": "Bearer ${JINA_API_KEY}"
}
}
}
}
Exclude specific tools:
{
"mcpServers": {
"jina-mcp-server": {
"url": "https://mcp.jina.ai/v1?exclude_tools=search_ssrn,search_images",
"headers": {
"Authorization": "Bearer ${JINA_API_KEY}"
}
}
}
}
Troubleshooting
I got stuck in a tool calling loop - what happened?
This is a common issue with LMStudio when the default context window is 4096 and you're using a thinking model like gpt-oss-120b or qwen3-4b-thinking. As thinking and tool calling continue, the run hits the context limit, the model loses the start of the task, and it loops.
Load the model with enough context length to hold the whole tool-calling chain.
I can't see all tools.
Some MCP clients have local caching and do not act