Skip to main content
Glama
rkram90

My UV MCP Server

by rkram90

My UV MCP Server

This is a simple Model Context Protocol (MCP) server built using Python and the uv package manager.
It demonstrates creating a basic MCP server with tools and connecting it to Claude Desktop.


Quick Start

Follow these steps to set up and run the MCP server:

Step

Command

Description

1

uv init my-mcp-server

Create new Python MCP project

2

uv add mcp[cli]

Add MCP SDK with CLI

3

source venv/bin/activate

Activate virtual environment

4

server.py

Write your server code

5

mcp dev server.py

Test and debug MCP server

6

mcp install server.py

Add it to Claude Desktop


Related MCP server: MCP Server Demo

1. Create the MCP Server

Create a file server.py with the following code:

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("My UV MCP Server")

@mcp.tool()
def greet(name: str) -> str:
    """Return a greeting message."""
    return f"Hello, {name}! 👋"

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

Available Tools

1 tool
add_numbersA

Add two integers and return the result.

ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/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 mentions the basic behavior (addition and returning result) but lacks details on error handling, performance, or side effects. This is a significant gap for a tool with no annotation coverage.

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

Conciseness5/5

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

The description is a single, efficient sentence that front-loads the purpose without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function.

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

Completeness4/5

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

Given the tool's low complexity (simple arithmetic), no annotations, and an output schema present, the description is mostly complete. It covers the basic operation but could improve by addressing behavioral aspects like error cases or limitations.

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

Parameters4/5

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

Schema description coverage is 0%, but the description clarifies that parameters 'a' and 'b' are integers to be added, adding meaning beyond the schema's type definitions. However, it doesn't specify constraints like range or format, keeping it from a perfect score.

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

Purpose5/5

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

The description clearly states the specific action ('Add two integers') and the outcome ('return the result'), with no sibling tools to differentiate from. It uses precise verbs and identifies the resource (integers) without being tautological.

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

Usage Guidelines3/5

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

The description implies usage for adding two integers but provides no explicit guidance on when to use this tool versus alternatives, prerequisites, or exclusions. With no sibling tools, the context is straightforward but lacks detailed instructions.

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 updatev1.0.0
    • Changedadd_numbers1 field changed
      • addedInput schema / title
        Added value: +"add_numbersArguments"
  2. 1 tool update
    • First observedadd_numbers

TDQS

A3.6/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The tool 'add_numbers' has a single, clearly defined purpose that cannot be confused with any other tool in this set.

Naming Consistency5/5

The single tool name 'add_numbers' follows a clear verb_noun pattern, and with only one tool, there is no inconsistency to evaluate. The naming is straightforward and predictable in isolation.

Tool Count2/5

A single tool is too few for most practical server purposes, as it severely limits functionality and scope. This feels thin and inadequate for handling any meaningful domain beyond a trivial operation, indicating a poor fit for typical MCP server use cases.

Completeness1/5

The server's purpose is unclear from the single tool, making it impossible to assess coverage meaningfully. With only a basic arithmetic operation, there are significant gaps in any plausible domain, rendering the tool surface severely incomplete for practical agent workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A demonstration MCP server for local development and testing with Claude Desktop on WSL. Provides basic utility tools including greeting messages, echo functionality, and server information retrieval.
    3
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    A getting started guide and template for creating Python-based MCP servers using uv for project management. Provides setup instructions for developing and testing MCP tools that can integrate with Claude Desktop.
    1
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server built with the mcp-framework for developing and managing custom tools. It provides a structured foundation for building and integrating modular components like data processors and API clients into Claude Desktop.
    5
    -
  • F
    license
    Not graded
    quality
    B
    maintenance
    A lightweight MCP server that bridges Claude AI with local Python execution, enabling personalized greetings and demonstrating local tool integration.
    -