🚀 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.
Metadata
Release files for iflow-mcp-sourangshupal-custompymcpserver 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_sourangshupal_custompymcpserver-0.1.5.tar.gz | 3.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_sourangshupal_custompymcpserver-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.0 kB
Release files / iflow_mcp_sourangshupal_custompymcpserver-0.1.5.tar.gz
| Download URL | iflow_mcp_sourangshupal_custompymcpserver-0.1.5.tar.gz |
|---|---|
| Size | 3.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f5cde72274889560c7f88cb95c789da7ee531e4c03e568bf81d028a455cc72a8
|
|
BLAKE2b-256 checksum How to use checksums |
ac1938d8a5014b9b976f2d0e2d3a2365da7f0aa11e409d52e883712827dd06db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / iflow_mcp_sourangshupal_custompymcpserver-0.1.5-py3-none-any.whl
| Download URL | iflow_mcp_sourangshupal_custompymcpserver-0.1.5-py3-none-any.whl |
|---|---|
| Size | 4.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f3f67da1a246daf44c90ade8075062f9b2e0e8103cc00feef656c44e3d9cea85
|
|
BLAKE2b-256 checksum How to use checksums |
7c5b3e3208e121a8c03a8c8a580af2c3b39f4f85d1396ce8edc633bc099f8b84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|