Skip to main content
Glama
Neel-XV

FastMCP MCP Server

by Neel-XV
README.md
# FastMCP MCP Server Project 🚀

A Model Context Protocol (MCP) server built with `FastMCP` that provides tools for web scraping and documentation searching.

## Features

- **`fetch_page`**: Fetches any web page and converts it to Markdown using the Jina Reader API.
- **`search_docs`**: A local search engine for the FastMCP documentation using `minsearch`.
- **`add`**: A simple utility tool to add two numbers.

## Prerequisites

- [uv](https://github.com/astral-sh/uv) installed on your system.
- Python 3.10 or higher.

## Installation

1. Clone the repository and navigate to the project directory.
2. The dependencies are managed by `uv`. You can install them by running:
   ```powershell
   uv sync
   ```

## Usage

### Running the MCP Server
To start the server using the Standard I/O (stdio) transport:
```powershell
uv run main.py
```

### Testing with MCP Inspector

You can use the official MCP Inspector to test the tools in a web interface:

```powershell
npx @modelcontextprotocol/inspector uv run main.py
```

## Project Structure

- `main.py`: The core MCP server implementation.
- `search.py`: Development script for testing `minsearch` indexing.
- `test.py`: Validation script for the `fetch_page` tool.
- `count_data.py`: Example application using the `fetch_page` tool to count word occurrences.
- `fastmcp-main.zip`: Local cache of the FastMCP documentation.

TDQS

A3.6/5.0

Scored across 3 tools

Disambiguation5/5

Each tool performs a unique, clearly defined function with no overlap between arithmetic, web fetching, and documentation search. An agent would have no difficulty selecting the appropriate tool.

Naming Consistency4/5

Tool names are short, lowercase, and mostly follow a verb_noun pattern (fetch_page, search_docs). The lone exception is 'add', which is a bare verb, but it is still clear and consistent in style.

Tool Count4/5

With only 3 tools, the server is on the lighter side, but the small set is still reasonable for a general-purpose utility server. Each tool earns its place, though the collection feels somewhat sparse.

Completeness2/5

The tools are unrelated to a single coherent domain, making it difficult to assess what complete coverage would look like. There are no obvious lifecycle operations (e.g., update or delete) and the set appears to be a collection of unconnected utilities, leaving significant gaps for any specific purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues