Skip to main content
Glama
jackmichaud

Modular MCP Server & Client

by jackmichaud

šŸŒ¤ļø Modular MCP Server & Client

This project provides a modular and extensible tool server built on FastMCP. It supports multiple tools organized across files and is compatible with a local or remote client that communicates via the MCP protocol.

šŸ“ Project Structure

ā”œā”€ā”€ server.py             # Defines and exports the shared FastMCP instance
ā”œā”€ā”€ main.py               # Entry point to run the server
ā”œā”€ā”€ tools/
│   └── weather_tools.py  # Weather-related tools (alerts, forecast)
ā”œā”€ā”€ client/
│   └── main.py           # Entry point to run the client
└── config.yaml           # Configuration file for the server

Related MCP server: Math Expression MCP Server

šŸš€ Getting Started

šŸ”§ Requirements

  • Python 3.10+

  • uv package manager (used to run client/server scripts)

  • MCP-compatible client and server setup

Add Environment Variables

touch .env
echo "ANTHROPIC_API_KEY=<your key here>" >> .env
echo ".env" >> .gitignore

šŸ–„ļø Run the Server

To start the tool server:

uv run server/main.py

šŸ§‘ā€šŸ’» Run the Client

To start the client server:

uv run client/main.py <Path to server>

Replace <Path to server> with the local or remote path to the server script (e.g. server/main.py).

🧩 Extending the Server

You can easily extend this server with additional tools. 1. Create a new module in the tools/ directory (e.g., tools/finance_tools.py). 2. Define your functions using the @mcp.tool() decorator. 3. In config.yaml, add your new module to the tools list to register the tools.

Example:

# config.yaml
tools:
  - tools.weather_tools
  - tools.search_tools  # Your new tools
-
security - not tested
F
license - not found
-
quality - not tested

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/jackmichaud/modular-mcp'

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