Skip to main content
Glama
jbccc

ZeroEntropy Zerank MCP Server

by jbccc
README.md
# 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

## Installation

```bash
npm install
```

## Usage

### Standalone Node.js Server

Run the MCP server using stdio transport:

```bash
npm start
```

Or for development with auto-reload:

```bash
npm run dev
```

### Cloudflare Workers Deployment

1. Install Wrangler CLI:
```bash
npm install -g wrangler
```

2. Login to Cloudflare:
```bash
wrangler login
```

3. Deploy the worker:
```bash
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:**
```json
{
  "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

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