Skip to main content
Glama
Nishant-IIT

small-mcp

by Nishant-IIT

small-mcp

A minimal FastMCP server in Python that demonstrates all four MCP primitives: tools, resources, resource templates, and prompts — including how to use the context object for logging and progress reporting.

Requirements

  • uv (package manager)

  • Python 3.14+

Related MCP server: MCPServer (FastMCP)

Setup

uv sync

Run

uv run python main.py

The server starts in stdio mode, ready to be connected to any MCP client.

Primitives

Tools

Functions the LLM can call to perform actions.

Tool

Description

add(a, b)

Add two numbers

word_count(text)

Count words, characters, and lines

current_time(timezone)

Return the current UTC time

log_message(message)

Log a message via MCP context (demonstrates progress + logging)

Resources

Static data the LLM can read.

URI

Description

resource://server/info

Basic info about this server

resource://snippets/hello-world

A Python Hello World snippet

Resource Templates

Dynamic resources resolved from a URI pattern.

Template

Description

resource://snippets/{language}/hello

Hello World snippet for python, javascript, go, or rust

Prompts

Reusable prompt templates the LLM can request by name.

Prompt

Args

Description

summarize

text, style

Ask for a summary in a given style

code_review

code, language

Request a code review

explain_concept

concept, audience

Explain a concept to a target audience

Context

The log_message tool shows how to inject ctx: Context into a tool to:

  • Send log messages back to the client via ctx.info()

  • Report progress via ctx.report_progress(progress, total)

Inspect with MCP Inspector

uv run fastmcp dev inspector main.py

Then open the URL printed in the terminal to browse and call tools, read resources, and render prompts interactively.

Connect to Claude Desktop

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "small-mcp": {
      "command": "uv",
      "args": ["run", "--directory", "/Users/nishantbhagat/Study/Projects/small mcp", "python", "main.py"]
    }
  }
}

Project Structure

small mcp/
├── main.py          # MCP server (all primitives in one file)
├── pyproject.toml   # uv project config
└── uv.lock
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Nishant-IIT/smallmp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server