Building your own Custom MCP Servers
Project description
🚀 Build Custom MCP Servers 📝☀️📰
📖 Project Description
This project demonstrates a simple MCP Servers built using the MCP mcp[cli] Python SDK. It provides several tools exposed through the MCP server:
- Note Management: Add, read, retrieve the latest, and generate summaries of notes stored locally.
- Weather Information: Fetch current weather data for a specified city using the WeatherAPI.com service.
- News Search: Perform news searches using the Brave Search API.
It utilizes API keys stored in a .env file for external services.
🛠️ Setup Instructions
Follow these steps to get the FastMCP agent running:
-
Prerequisites:
- Python 3.12 installed.
- A virtual environment manager (like
venv,pipenv,poetry, oruv) is recommended.
-
Clone the Repository (if you haven't already):
# Make sure you are in the correct parent directory git clone https://github.com/sourangshupal/Build-Custom-MCP-Servers # Or use the current directory if already cloned cd Build-Custom-MCP-Servers
-
Set up Virtual Environment & Install Dependencies:
- Install dependencies (assuming uv, based on uv.lock, otherwise adjust for pip/poetry):
uv sync uv lock source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
- OR
pip install uv # if you don't have uv uv pip install -r requirements.txt # Or uv sync if using pyproject.toml directly # If not using uv, likely: pip install -r requirements.txt or poetry install or pip install .
- Install dependencies (assuming uv, based on uv.lock, otherwise adjust for pip/poetry):
-
Configure Environment Variables:
- Copy the example environment file:
cp .env.example .env
- Edit the newly created
.envfile and add your API keys:WEATHER_API_KEY="YOUR_WEATHER_API_KEY" BRAVE_API_KEY="YOUR_BRAVE_API_KEY"
- Copy the example environment file:
-
Run the Agent:
-
Execute the main script:
mcp install main.py
-
The FastMCP server should be added to Claude Desktop.
mcp dev main.py
-
Debug the MCP Server
-
✨ Features
- Note-taking capabilities (add, read, latest, summarize) 📝
- Current weather fetching ☀️
- Brave Search integration for news 📰
- Configuration via
.envfile 🔑 - Built with
mcp[cli]⚙️
🤝 Contributing
Contributions are welcome! Please feel free to submit pull requests or open issues.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_sourangshupal_custompymcpserver-0.1.5.tar.gz.
File metadata
- Download URL: iflow_mcp_sourangshupal_custompymcpserver-0.1.5.tar.gz
- Upload date:
- Size: 3.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f5cde72274889560c7f88cb95c789da7ee531e4c03e568bf81d028a455cc72a8
|
|
| MD5 |
a50a4f198400eb6e4092bb1064a1b4a5
|
|
| BLAKE2b-256 |
ac1938d8a5014b9b976f2d0e2d3a2365da7f0aa11e409d52e883712827dd06db
|
File details
Details for the file iflow_mcp_sourangshupal_custompymcpserver-0.1.5-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_sourangshupal_custompymcpserver-0.1.5-py3-none-any.whl
- Upload date:
- Size: 4.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.27 {"installer":{"name":"uv","version":"0.9.27","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f3f67da1a246daf44c90ade8075062f9b2e0e8103cc00feef656c44e3d9cea85
|
|
| MD5 |
ecb476f94ca6713f9d10f90bda699eca
|
|
| BLAKE2b-256 |
7c5b3e3208e121a8c03a8c8a580af2c3b39f4f85d1396ce8edc633bc099f8b84
|