Fetches resume data from a GitHub gist to provide professional background context to LLMs.
Chat with Michael Wybraniec's AI-powered resume using open-source LLMs - Deploy for FREE!
⨠Now built with a clean, modular architecture for maximum maintainability and scalability.
# 1. Clone the repository
git clone <your-repo-url>
cd mcp-resume
# 2. Install dependencies
pip install -r requirements.txt
# 3. Run the application
streamlit run app.py
# 4. Open http://localhost:8501
# 5. Get a free API key from OpenRouter.ai
# 6. Add your API key in the sidebar and start chatting!
git add .
git commit -m "Deploy AI Resume to Streamlit Cloud"
git push origin main
app.py
For enhanced LLM providers, add secrets in Streamlit Cloud dashboard:
[secrets]
OPENROUTER_API_KEY = "your_openrouter_api_key_here"
OPENAI_API_KEY = "your_openai_api_key_here"
You'll get a URL like: https://your-username-mcp-resume-app-xyz.streamlit.app
meta-llama/llama-3.1-8b-instruct:free
# Install Ollama
brew install ollama # macOS
# or visit https://ollama.ai for other platforms
# Start Ollama
ollama serve
# Install models
ollama pull llama3.2
ollama pull llama3.1
mcp-resume/
āāā š app.py # Main entry point (Streamlit-ready)
āāā š requirements.txt # Dependencies
ā
āāā š§ core/ # Foundation & Configuration
ā āāā config.py # Settings & constants
ā āāā models.py # Data models & types
ā
āāā āļø services/ # Business Logic & Integrations
ā āāā resume_service.py # Resume data handling
ā āāā llm_providers.py # AI/LLM integrations
ā āāā document_generator.py # PDF generation
ā āāā fallback_resume.py # Data fallback service
ā
āāā šØ ui/ # User Interface Layer
ā āāā ui_components.py # UI components & styling
ā āāā session_manager.py # Session state management
ā
āāā š data/ # Data Files
ā āāā resume.json
ā āāā michael_wybraniec_resume.json
ā āāā CV_Michael_Wybraniec_15_Jun_2025.pdf
ā
āāā šØ utils/ # Utility Scripts
āāā create_gist.py # GitHub Gist utilities
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā
ā UI Components āāāāāŗā Resume Service āāāāāŗā JSON Resume ā
ā (Chat Interface)ā ā (Data Processing)ā ā Data ā
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāāāāā
ā
ā¼
āāāāāāāāāāāāāāāāāāā
ā LLM Providers ā
ā ⢠OpenRouter ā
ā ⢠Ollama ā
ā ⢠OpenAI ā
āāāāāāāāāāāāāāāāāāā
core/config.py
- Configuration, constants, and settingscore/models.py
- Data models and type definitionsui/ui_components.py
- UI components, styling, and modalsui/session_manager.py
- Session state management and initializationservices/resume_service.py
- Resume data retrieval and context generationservices/llm_providers.py
- LLM provider implementations and unified chat interfaceservices/document_generator.py
- PDF generation and export functionalityservices/fallback_resume.py
- Resume data service and context managementdata/
- Resume JSON files and PDF assetsutils/
- Utility scripts and helper functionspip install -r requirements.txt
streamlit run app.py
requirements.txt
and runtime.txt
streamlit run app.py --server.port $PORT
mcp-resume/
āāā š app.py # Main entry point (Streamlit-ready)
āāā š requirements.txt # Python dependencies
āāā š runtime.txt # Python version for deployment
āāā š README.md # Documentation
āāā š DEPLOYMENT.md # Deployment guide
āāā š§ secrets.toml.example # Example secrets configuration
ā
āāā š§ core/ # Foundation & Configuration
ā āāā __init__.py
ā āāā config.py # Settings & constants
ā āāā models.py # Data models & types
ā
āāā āļø services/ # Business Logic & Integrations
ā āāā __init__.py
ā āāā resume_service.py # Resume data handling
ā āāā llm_providers.py # AI/LLM integrations
ā āāā document_generator.py # PDF generation
ā āāā fallback_resume.py # Data fallback service
ā
āāā šØ ui/ # User Interface Layer
ā āāā __init__.py
ā āāā ui_components.py # UI components & styling
ā āāā session_manager.py # Session state management
ā
āāā š data/ # Data Files
ā āāā resume.json # Primary resume data
ā āāā michael_wybraniec_resume.json # Backup resume data
ā āāā CV_Michael_Wybraniec_15_Jun_2025.pdf # Professional CV
ā
āāā šØ utils/ # Utility Scripts
ā āāā __init__.py
ā āāā create_gist.py # GitHub Gist utilities
ā
āāā š venv/ # Virtual environment
services/llm_providers.py
ui/ui_components.py
services/document_generator.py
services/resume_service.py
core/config.py
app.py
stays in root for deployment__init__.py
files for clean importsClone and Install
git clone <your-repo>
cd mcp-resume
pip install -r requirements.txt
Run Locally
streamlit run app.py
Configure & Chat
http://localhost:8501
michael_wybraniec_resume.json
with your resume dataresume_service.py
if neededui_components.py
header sectionllm_providers.py
ui_components.py
document_generator.py
resume_service.py
ui_components.py
session_manager.py
Ready to revolutionize resume interactions with a maintainable, scalable architecture? š
Deploy your AI-powered resume today - now with professional-grade code organization!
A research server that retrieves and creates survey data pages in Notion.
Read text, metadata, and page count from PDF files securely within the project context.
Dynamic and reflective problem-solving through thought sequences
Manage Israeli bank accounts and transactions.
Provides AI assistants with direct access to the n8n automation platform.
Automatically tailors resumes for specific job applications using LibreOffice.
Interact with Microsoft OneNote using AI language models like Claude and other LLMs.
Access personal and team knowledge repositories, including documents and Slack discussions.
Generates Decent Sampler drum kit configurations.
Interact with the Confluence API to manage spaces, pages, and content. Supports searching, creating, and updating pages.