README Documentation
🧠 MCP:Local PR Description Generator using Mistral
This project is a lightweight tool that uses Mistral running locally via Ollama to generate clean, structured GitHub pull request (PR) descriptions from staged git diffs.
It wraps the model inside a FastAPI server and provides a Gradio web UI for quick generation.
📌 Features
- 💻 Local-first: All processing is done on your machine using
ollama
(no cloud calls) - ⚙️ FastAPI backend: Exposes a simple HTTP endpoint to query Mistral
- 🌐 Gradio frontend: Paste a git diff and get a structured PR description instantly
- 🧩 Git-aware: Designed around generating summaries from actual diffs
- 🪶 Lightweight and privacy-friendly
🚀 Getting Started
1. Install Dependencies
pip install -r requirements.txt
2. Start Ollama with Mistral
ollama run mistral
3. Run the FastAPI server
uvicorn app.server:app --reload
4. Start the Gradio UI
python -m frontend.gradio
✨ Example
Git Diff
diff --git a/src/utils.py b/src/utils.py
index 1a2b3c4..5d6ef7f 100644
--- a/src/utils.py
+++ b/src/utils.py
@@ def calculate_average(numbers):
- return sum(numbers) / len(numbers)
+ if not numbers:
+ return 0
+ return sum(numbers) / len(numbers)
@@ def greet_user(name):
- print("Hello", name)
+ print(f"Hello, {name} 👋")
Output PR Description
**Title:** [Utils] Handle empty list in average calculation and improved greeting
**Description:**
- Added edge case handling for `calculate_average()` to return 0 when given an empty list.
- Enhanced user experience by adding an emoji in the greeting function `greet_user()`.
These changes improve error handling and make output more user-friendly.
🧠 How it Works
- The Gradio UI sends the pasted diff to
http://localhost:8000/mistral
- FastAPI receives it and forms a prompt for the local Mistral model
- Mistral responds with a human-readable PR title + description
- The Gradio UI displays the result
🔒 Privacy Note
This tool is completely local. Nothing is sent to the cloud — your code and git diffs stay on your machine.
🙌 Credits
📬 License
MIT License
Quick Actions
Key Features
Model Context Protocol
Secure Communication
Real-time Updates
Open Source