Skip to main content
Glama
ParthSharma1197

Simple Remote MCP Server

README.md
# Simple MCP Server (FastMCP)

This repository demonstrates how to create, test, and deploy a **simple remote MCP server** using **FastMCP**, **uv**, and **GitHub**.

---

## Prerequisites

Make sure you have the following installed:

- Python 3.10+
- `uv` (Python package manager)
- Git
- VS Code (recommended)
- Node.js (for MCP Inspector)

---

## Step-by-Step Guide

### 1. Install `uv`
`uv` is a fast Python package manager and runtime.

```bash
pip install uv
```

---

### 2. Create a new project folder

```bash
mkdir simple-mcp-server
cd simple-mcp-server
```

---

### 3. Open the folder in VS Code

```bash
code .
```

---

### 4. Initialize the project

```bash
uv init
```

This creates:
- `pyproject.toml`
- Virtual environment configuration

---

### 5. Install FastMCP

```bash
uv add fastmcp
```

FastMCP allows you to build MCP-compatible servers easily.

---

### 6. Create a simple server

Create a file called `main.py`:

```python
from fastmcp import FastMCP

mcp = FastMCP("Simple MCP Server")

@mcp.tool()
def hello(name: str) -> str:
    return f"Hello, {name}! Welcome to MCP."

if __name__ == "__main__":
    mcp.run()
```

---

### 7. Run the server

```bash
uv run main.py
```

Your MCP server will start locally.

---

### 8. Test using MCP Inspector

Use **MCP Inspector** to:
- Connect to the server
- Verify tools are listed
- Send test requests

This confirms your server is MCP-compliant.

---

### 9. Create a GitHub repository

Create a new repo on GitHub named:

```
simple-mcp-server
```

---

### 10. Initialize Git locally

```bash
git init
git add .
git commit -m "Initial commit: Simple MCP server"
```

---

### 11. Add GitHub remote & push

```bash
git remote add origin https://github.com/yourusername/simple-mcp-server.git
git push -u origin main
```

---

### 12. Deploy on FastMCP Cloud

1. Create an account on **FastMCP Cloud**
2. Connect your GitHub repository
3. Deploy the project

After deployment:
- Your MCP server gets a public endpoint
- It can be used by MCP clients and LLM agents

---

## Project Structure

```
simple-mcp-server/
│── main.py
│── pyproject.toml
│── README.md
```

---

## Next Steps

- Add more MCP tools
- Connect this server to LLM agents
- Add authentication & logging

---

Happy building 🚀

TDQS

B3.3/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: 'add' performs arithmetic addition on two numbers, while 'random_number' generates a random integer within a specified range. There is no overlap in functionality, making it easy for an agent to select the correct tool based on the task.

Naming Consistency3/5

The naming is mixed: 'add' is a simple verb, while 'random_number' uses a noun phrase with an underscore. This lacks a consistent pattern like verb_noun, but the names are still readable and descriptive enough to understand their functions.

Tool Count2/5

With only 2 tools, the server feels thin and under-scoped for a 'Simple Remote MCP Server' that might imply broader utility. While the tools are functional, the count is too low to cover a meaningful domain, limiting the server's coherence and usefulness for agents.

Completeness2/5

Inferred as a basic utility server, the tool set is severely incomplete; it lacks common operations like subtraction, multiplication, or other random generation methods (e.g., floats). This creates significant gaps that could lead to agent failures when trying to perform basic mathematical or random tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues