FreeCodeCamp Feed Parser MCP
README.md
# My FreeCodeCamp MCP Project
A personal learning project built to explore **Model Context Protocol (MCP)** servers using Python. I created this repo to practice building small tool servers, connect them to AI workflows, and learn how MCP can expose useful functions over HTTP and stdio.
> This project was inspired by FreeCodeCamp learning materials. I want to thank the FreeCodeCamp community for the tutorials and resources that helped me build this project.
## β¨ Whatβs included
This repository contains three MCP-based demo apps:
### 1. FastAPI MCP Calculator (`FastAPI MCP/`)
A simple REST API calculator built with **FastAPI** and **FastMCP**.
- Endpoints: `/add`, `/multiply`, `/subtract`, `/divide`
- Good for testing HTTP-based MCP clients and web integrations
- Start it with:
```powershell
python -u "FastAPI MCP\calculator.py"
```
### 2. FastMCP Calculator (`FastMCP/`)
Two calculator servers showing different MCP hosts:
- `calculator_stdio.py` β standard input/output MCP server
- `calculator_streamable_http.py` β HTTP-based MCP server
- Supports basic operations: add, multiply, subtract, divide
- Run the stdio server with:
```powershell
python -u "FastMCP\calculator_stdio.py"
```
### 3. FreeCodeCamp Feed Parser MCP (`Feed Parser MCP/`)
A small MCP tool for searching the FreeCodeCamp news RSS feed.
- Tool: `fcc_news_search(query, max_results=5)`
- Returns article titles, links, published dates, and summaries
- Start it with:
```powershell
python -u "Feed Parser MCP\server.py"
```
## π How to use this project
### 1. Install dependencies
```powershell
pip install -r requirements.txt
```
### 2. Run a server
Each server runs separately. Open a terminal and choose one:
```powershell
python -u "FastAPI MCP\calculator.py"
python -u "FastMCP\calculator_stdio.py"
python -u "FastMCP\calculator_streamable_http.py"
python -u "Feed Parser MCP\server.py"
```
### 3. Explore the tools
- Use the FastAPI calculator from a browser, Postman, or any HTTP client
- Use the FastMCP calculator in an MCP-compatible client
- Use the feed parser to search FreeCodeCamp articles by keyword
## π¦ Dependencies
This project uses:
- `fastapi` β API server framework
- `fastapi-mcp` β MCP integration for FastAPI
- `fastmcp` β Python MCP server framework
- `mcp[cli]` β MCP command-line support
- `feedparser` β RSS feed parsing
- `uvicorn` β ASGI server runtime
See `pyproject.toml` for exact version details.
## π§ Example MCP configuration
If you use an MCP client, this sample `mcp.json` configuration can help:
```json
{
"servers": {
"calculator-http": {
"url": "http://localhost:8080/mcp"
},
"calculator-stdio": {
"command": "python",
"args": ["FastMCP/calculator_stdio.py"]
},
"freecodecamp-feed-parser": {
"command": "python",
"args": ["Feed Parser MCP/server.py"]
}
}
}
```
## π‘ About MCP
**Model Context Protocol (MCP)** defines how AI models connect to tools and services. In this project, each server exposes tool functions that can be called programmatically, helping me learn how AI and application tools can work together.
## π― Project Goals
- Practice building Python servers for MCP
- Explore REST and stdio-based tool hosting
- Create a small personal project inspired by FreeCodeCamp
- Learn how to integrate external data sources using RSS
## π Thank you
Special thanks to **FreeCodeCamp** for the learning resources and inspiration behind this project.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues