Integrates with Google Gemini CLI to provide AI-powered responses and multi-turn conversations for technical questions, code reviews, and documentation assistance.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Fast MCP Task Managerlist all tasks that are pending"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Fast MCP Server with Google Gemini Integration
A comprehensive Model Context Protocol (MCP) server built with FastAPI that integrates with Google Gemini CLI for AI-powered task management and data processing.
π Features
FastAPI-based MCP Server: High-performance async server running on port 5000
Google Gemini Integration: Seamless integration with Gemini CLI for AI responses
Task Management Tools: Complete CRUD operations for task management
Data Analytics: Task statistics and CSV export capabilities
Comprehensive Logging: JSON-based operation logging for tracking and debugging
CLI Interface: Easy-to-use command-line tool for server interaction
RESTful API: Full API documentation with Swagger UI
Production Ready: Modular, clean, and well-documented code
π Prerequisites
Python 3.8 or higher
Google Gemini CLI installed and configured
curl (for CLI operations)
Git (for cloning the repository)
π οΈ Installation
1. Clone the Repository
git clone <repository-url>
cd FAST_MCP2. Create Virtual Environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate3. Install Dependencies
pip install -r requirements.txt4. Install Google Gemini CLI
Follow the official Gemini CLI installation guide:
Make sure Gemini CLI is properly configured with your API key.
π Quick Start
Start the Server
./mcp_cli.sh startThe server will start on http://localhost:5000
Check Server Status
./mcp_cli.sh statusList Available Tools
./mcp_cli.sh listUse MCP Tools
# List all tasks
./mcp_cli.sh run list_tasks
# Create a new task
./mcp_cli.sh run create_task "Implement authentication" "Add JWT-based auth" "high"
# Update task status
./mcp_cli.sh run update_task_status 1 "in_progress"
# Search tasks
./mcp_cli.sh run search_tasks "authentication"
# Get task statistics
./mcp_cli.sh run get_task_statistics
# Export tasks to CSV
./mcp_cli.sh run export_tasks_to_csvInteract with Gemini
./mcp_cli.sh gemini "What are the best practices for API security?"View Logs
./mcp_cli.sh logsStop the Server
./mcp_cli.sh stopπ API Documentation
Once the server is running, visit:
Swagger UI: http://localhost:5000/docs
ReDoc: http://localhost:5000/redoc
π§ Available MCP Tools
1. list_tasks
Description: List all tasks with optional status filtering
Parameters:
status_filter(optional): Filter by status (pending, in_progress, completed)
Example:
./mcp_cli.sh run list_tasks pending
2. create_task
Description: Create a new task
Parameters:
title(required): Task titledescription(required): Task descriptionpriority(optional): Priority level (low, medium, high)assigned_to(optional): User ID to assign the task
Example:
./mcp_cli.sh run create_task "New Feature" "Implement user dashboard" "high" "dev1"
3. update_task_status
Description: Update the status of an existing task
Parameters:
task_id(required): ID of the task to updatenew_status(required): New status (pending, in_progress, completed)
Example:
./mcp_cli.sh run update_task_status 1 "completed"
4. get_task_statistics
Description: Get comprehensive task statistics and analytics
Parameters: None
Example:
./mcp_cli.sh run get_task_statistics
5. search_tasks
Description: Search tasks by title or description
Parameters:
query(required): Search query string
Example:
./mcp_cli.sh run search_tasks "authentication"
6. export_tasks_to_csv
Description: Export all tasks to a CSV file
Parameters: None
Example:
./mcp_cli.sh run export_tasks_to_csv
π€ Gemini Integration
The server integrates with Google Gemini CLI to provide AI-powered responses:
Features
Multi-turn Conversations: Maintains context across interactions
Error Handling: Graceful handling of CLI failures and timeouts
Logging: All Gemini interactions are logged for tracking
Timeout Protection: 30-second timeout to prevent hanging requests
Usage Examples
# Technical questions
./mcp_cli.sh gemini "How do I implement JWT authentication in FastAPI?"
# Code review
./mcp_cli.sh gemini "Review this Python function for best practices"
# Documentation help
./mcp_cli.sh gemini "Generate API documentation for a task management system"π Project Structure
FAST_MCP/
βββ server.py # Main FastAPI server
βββ requirements.txt # Python dependencies
βββ mcp_cli.sh # CLI interface script
βββ sample_data.json # Sample task data
βββ README.md # This file
βββ venv/ # Virtual environment (created during setup)
βββ server.log # Server logs (created when running)
βββ mcp_logs.json # MCP operation logs (created when running)
βββ tasks_export_*.csv # Exported CSV files (created when exporting)π Logging and Monitoring
Operation Logs
All MCP tool calls and Gemini interactions are logged to mcp_logs.json:
{
"timestamp": "2024-01-17T10:30:00Z",
"operation": "mcp_tool_call",
"tool_name": "create_task",
"success": true,
"result": {...},
"error": null
}Server Logs
Server logs are written to server.log and include:
Server startup/shutdown events
Request/response details
Error messages and stack traces
Performance metrics
Health Monitoring
Check server health at any time:
./mcp_cli.sh healthπ‘οΈ Error Handling
The server includes comprehensive error handling:
Tool Validation: Validates tool names and parameters
Data Persistence: Handles file I/O errors gracefully
Gemini CLI Integration: Manages CLI failures and timeouts
HTTP Errors: Proper HTTP status codes and error messages
Logging: All errors are logged for debugging
π§ Configuration
Server Configuration
Port: 5000 (configurable in
server.py)Host: 0.0.0.0 (all interfaces)
Data File:
sample_data.jsonLog File:
mcp_logs.json
Gemini CLI Configuration
Ensure Gemini CLI is properly configured:
gemini config set api_key YOUR_API_KEYπ Deployment
Development
./mcp_cli.sh startProduction
For production deployment, consider:
Using a process manager like PM2 or systemd
Setting up reverse proxy with Nginx
Implementing proper authentication
Adding rate limiting
Setting up monitoring and alerting
π§ͺ Testing
Manual Testing
Start the server:
./mcp_cli.sh startTest each tool:
./mcp_cli.sh run <tool_name>Test Gemini integration:
./mcp_cli.sh gemini "test prompt"Check logs:
./mcp_cli.sh logsVerify health:
./mcp_cli.sh health
API Testing
Use the Swagger UI at http://localhost:5000/docs to test API endpoints directly.
π Sample Data
The project includes sample_data.json with:
5 sample tasks with different statuses and priorities
4 user profiles with roles and departments
2 project definitions with team assignments
π€ Contributing
Fork the repository
Create a feature branch:
git checkout -b feature-nameMake your changes
Test thoroughly
Commit your changes:
git commit -m "Add feature"Push to the branch:
git push origin feature-nameSubmit a pull request
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Troubleshooting
Common Issues
Server won't start
Check if port 5000 is available
Verify virtual environment is activated
Check
server.logfor error details
Gemini CLI not found
Install Gemini CLI:
pip install google-generativeaiConfigure API key:
gemini config set api_key YOUR_KEY
Permission denied on mcp_cli.sh
Make executable:
chmod +x mcp_cli.sh
Data file errors
Check file permissions
Verify JSON format in
sample_data.json
Getting Help
Check the logs:
./mcp_cli.sh logsReview server logs:
tail -f server.logTest server health:
./mcp_cli.sh healthCheck API documentation: http://localhost:5000/docs
π― Roadmap
Add user authentication and authorization
Implement real-time notifications
Add more MCP tools (file processing, email, etc.)
Create web dashboard
Add unit and integration tests
Implement caching for better performance
Add Docker support
Create CI/CD pipeline
π Support
For support and questions:
Create an issue in the repository
Check the troubleshooting section
Review the API documentation
Built with β€οΈ using FastAPI and Google Gemini
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.