Skip to main content
Glama
jbccc

ZeroEntropy Zerank MCP Server

by jbccc

ZeroEntropy Zerank MCP Server

A Model Context Protocol (MCP) server for document reranking using the ZeroEntropy Zerank API, now implemented in Node.js.

Features

  • Document reranking using the ZeroEntropy Zerank API

  • Input validation with Zod schemas

  • Support for both standalone Node.js server and Cloudflare Workers deployment

  • MCP protocol compliance for integration with AI assistants

Related MCP server: Modular RAG MCP Server

Installation

npm install

Usage

Standalone Node.js Server

Run the MCP server using stdio transport:

npm start

Or for development with auto-reload:

npm run dev

Cloudflare Workers Deployment

  1. Install Wrangler CLI:

npm install -g wrangler
  1. Login to Cloudflare:

wrangler login
  1. Deploy the worker:

wrangler deploy

API

The server provides one tool:

get_reranking

Reranks a list of documents based on relevance to a query.

Parameters:

  • query (string): The search query (1-10000 characters)

  • documents (array): Array of documents to rerank (1-1000 items)

  • api_key (string): ZeroEntropy API key

Returns:

  • results (array): Array of reranked results with index and relevance_score

Example:

{
  "query": "machine learning algorithms",
  "documents": [
    "Neural networks are a type of machine learning model",
    "Cooking recipes for pasta dishes",
    "Supervised learning techniques in AI"
  ],
  "api_key": "your-api-key"
}

Environment

  • Node.js 18.0.0 or higher

  • ZeroEntropy API access

License

MIT

Available Tools

1 tool
get_rerankingC

Get the reranked document listing

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe search query
documentsYesArray of documents to rerank
api_keyYesAPI key for authentication

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It doesn't disclose behavioral traits like authentication needs (implied by api_key but not stated), rate limits, or what 'reranked' means in practice. The description is minimal and lacks operational details.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no wasted words, making it front-loaded and efficient. However, it's so brief that it under-specifies the tool's purpose, slightly reducing its effectiveness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a reranking operation with 3 parameters and no annotations or output schema, the description is incomplete. It doesn't explain what 'reranked' means, the expected output format, or behavioral aspects, leaving significant gaps for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema documents all parameters well. The description adds no meaning beyond the schema, as it doesn't explain how parameters interact or the semantics of reranking. Baseline 3 is appropriate since the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get the reranked document listing' states the action (get) and resource (reranked document listing), but it's vague about what reranking entails. It doesn't specify the algorithm or purpose of reranking, and with no sibling tools, differentiation isn't needed, but the purpose could be more specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool, such as scenarios for reranking documents or prerequisites. With no sibling tools, alternatives aren't mentioned, but the description lacks context for usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

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

  1. 1 tool update
    • First observedget_reranking

TDQS

C2.9/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool 'get_reranking' has a clear and distinct purpose, so agents cannot misselect between non-existent alternatives.

Naming Consistency5/5

The naming pattern is trivially consistent as there is only one tool. It follows a verb_noun convention ('get_reranking'), which is clear and predictable, though no comparison with other tools is possible.

Tool Count2/5

A single tool is generally too few for most server purposes, as it limits functionality and suggests a thin or incomplete surface. For a 'Zerank' server, which might imply ranking or reranking operations, one tool feels insufficient to cover the domain adequately.

Completeness2/5

The tool set is severely incomplete for a reranking domain. With only a 'get_reranking' tool, there are obvious gaps such as creating, updating, or deleting rankings, or other related operations like listing or searching, which agents would need for full workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers