Skip to main content
Glama
Vaishnavi-Raykar

Ressl AI MCP Server

README.md
# Ressl AI MCP Server

MCP server for file search functionality with support for both partial and exact word matching.

## Features

- **Partial Keyword Search**: Find all occurrences of a keyword including partial matches
- **Exact Word Search**: Match complete words only with optional case sensitivity
- **Detailed Results**: Line numbers, column positions, and matched text for all occurrences
- **MCP Inspector Integration**: Built-in support for testing with MCP Inspector

## Installation

```bash
npm install
```

## Usage

### Build the Project

```bash
npm run build
```

### Run with MCP Inspector

```bash
npm start
```

This will automatically build the project and launch the MCP Inspector for testing.

### Development Mode

```bash
npm run dev
```

Runs TypeScript compiler in watch mode for continuous development.

## Available Tools

### 1. search_in_file

Searches for a keyword within a file, finding all occurrences including partial matches.

**Parameters:**
- `filePath` (string, required): Path to the file to search in
- `keyword` (string, required): Keyword to search for

**Example:**
```json
{
  "filePath": "./sample.txt",
  "keyword": "search"
}
```

**Result:** Finds "search", "searching", "researcher", etc.

### 2. exact_word_search

Searches for exact word matches within a file using word boundaries.

**Parameters:**
- `filePath` (string, required): Path to the file to search in
- `word` (string, required): Exact word to search for
- `caseSensitive` (boolean, optional): Whether search should be case sensitive (default: false)

**Example:**
```json
{
  "filePath": "./sample.txt",
  "word": "search",
  "caseSensitive": false
}
```

**Result:** Finds only exact "search" matches, not "searching" or "researcher"

## Testing

A `sample.txt` file is included in the project for testing purposes.

### Test Cases

| Search Term | Tool | Matches in "searching" |
|-------------|------|------------------------|
| "search" | search_in_file | Yes (partial match) |
| "search" | exact_word_search | No (exact word only) |
| "AI" | search_in_file | Yes (finds "Ressl AI" and "AIR") |
| "AI" | exact_word_search | Only "Ressl AI" (not "AIR") |

### Using MCP Inspector

1. Run `npm start` to launch the inspector
2. Open the provided URL in your browser
3. Select a tool from the Tools tab
4. Enter the required parameters
5. Click Execute to see results

TDQS

A3.6/5.0

Scored across 2 tools

Disambiguation2/5

The two tools have overlapping purposes, both searching within files, with only subtle differences in matching behavior (exact word vs. keyword with partial matches). This creates ambiguity, as an agent might struggle to choose between them without understanding the nuanced distinction, and they could easily be confused for similar tasks.

Naming Consistency4/5

The tool names follow a consistent snake_case pattern (exact_word_search, search_in_file) and use clear verbs ('search'), which aids readability. However, the naming is not perfectly consistent, as one specifies 'exact_word' while the other uses 'in_file', but overall, the pattern is predictable and coherent.

Tool Count2/5

With only 2 tools, the server feels thin and under-scoped for a general-purpose AI MCP server, suggesting limited functionality. This low count may not adequately cover the domain implied by the server name, potentially leaving gaps in capabilities and making it less useful for agents.

Completeness2/5

Inferred as a file search domain, the tool set is severely incomplete, lacking basic operations like listing files, reading file contents, or handling multiple files. The two tools only cover specific search variations, leaving significant gaps that will likely cause agent failures in broader tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues