sreerajchintham/my-first-mcp-server
3.1
If you are the rightful owner of my-first-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The MCP Multi-Service Server is a comprehensive solution that integrates Google Colab, GitHub, and Google Docs with AI-powered analysis to automate development workflows.
Tools
5
Resources
0
Prompts
0
🚀 MCP Multi-Service Server
A comprehensive Model Context Protocol (MCP) server that integrates Google Colab, GitHub, and Google Docs with AI-powered analysis for seamless development workflow automation.
🌟 Features
🔗 Multi-Platform Integration
- Google Colab - Notebook management and analysis
- GitHub - Repository operations and code insights
- Google Docs - Document management and resume building
- AI Analysis - Powered by Google Gemini API
🤖 AI-Powered Capabilities
- Smart README Generation - Create professional documentation from notebooks
- Code Analysis - Comprehensive repository insights and summaries
- Resume Building - Auto-generate project summaries for professional profiles
- Intelligent Parsing - Extract libraries, dependencies, and project structure
⚡ Automation Features
- One-Click Repository Creation - Convert Colab notebooks to GitHub repos
- Interactive Testing - Comprehensive test suite with user-friendly interface
- Batch Processing - Handle multiple files and repositories efficiently
- Fallback Modes - Graceful degradation when APIs are unavailable
🚀 Quick Start
1. Clone and Install
git clone <https://github.com/sreerajchintham/my-first-mcp-server>
cd my-first-mcp-server
pip install -r requirements.txt
2. Configure APIs
# Set up Google APIs
python reauthorize_google_apis.py
# Create .env file
cp .env.example .env
# Edit .env with your API keys
3. Run the Server
python mcp_server.py
4. Test Everything
python test_client.py
📋 Prerequisites
- Python 3.8+
- Google Account with Drive access
- GitHub Account with personal access token
- Gemini API Key (optional, for AI features)
🛠️ Installation
Option 1: Development Setup
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # Linux/Mac
# .venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txt
Option 2: Production Setup
# Use locked versions for reproducibility
pip install -r requirements-lock.txt
⚙️ Configuration
1. Google APIs Setup
- Create project in Google Cloud Console
- Enable Drive API and Docs API
- Create OAuth 2.0 credentials (Desktop app)
- Download
client_secret.json→CREDENTIALS/client_secret.json - Run authorization:
python reauthorize_google_apis.py
2. GitHub API Setup
- Go to GitHub Settings > Personal Access Tokens
- Create token with
repoanduserscopes - Add to
.envfile
3. Environment Variables
# .env file
GOOGLE_CREDENTIALS_DIR=./CREDENTIALS
GOOGLE_TOKEN_FILE=token.json
GITHUB_TOKEN=your_github_token_here
GEMINI_API_KEY=your_gemini_api_key_here # Optional
📚 Usage
Interactive Mode
python test_client.py
- Browse and analyze GitHub repositories
- Generate AI-powered project summaries
- Create professional documentation
- Manage Google Docs integration
Programmatic Usage
from mcp.client.stdio import stdio_client
from mcp import StdioServerParameters
# Connect to MCP server
server_params = StdioServerParameters(
command="python",
args=["mcp_server.py"]
)
# Use MCP tools
async with stdio_client(server_params) as (read, write):
# ... MCP operations
🔧 Available Tools
Google Colab Tools
list_colab_files()- List notebooks in Google Driveread_colab_notebook(file_id)- Read notebook contentgenerate_readme(file_id, file_name)- AI-powered README generation
GitHub Tools
list_github_repos()- List repositories with filtersread_github_repo_files(repo_name)- Analyze repository filesanalyze_github_repo_with_ai(repo_name)- AI-powered analysiscreate_github_repo()- Create repo from Colab notebook
Google Docs Tools
list_google_docs(search_term)- Find Google Docscreate_google_doc(title, content)- Create new Google Docadd_to_google_doc(doc_id, content)- Add content to documents
Utility Tools
ping()- Test server connectivitysummarize_repo_analysis_for_resume()- Generate resume summaries
🤖 AI Analysis Types
| Type | Description | Use Case |
|---|---|---|
| Comprehensive | Full analysis of code, docs, and structure | Complete project overview |
| README Only | Focus on documentation and descriptions | Documentation review |
| Code Only | Deep dive into code structure and logic | Technical assessment |
| Structure | Project organization and architecture | Architecture review |
🔗 Key Features
GitHub Analysis to Google Docs Integration
- Automatic Saving: Save AI-powered repository analysis directly to Google Docs
- Document Options: Create new documents or add to existing ones
- Professional Formatting: Clean, structured content with proper headings
- Interactive Workflow: Prompted options after each analysis
- Search & Select: Find and select existing documents by search term
Enhanced Google Docs Management
- Document Creation: Create new Google Docs with initial content
- Content Addition: Add formatted sections to existing documents
- Document Search: Search and list documents by keywords
- Document Linking: Direct links to created/updated documents
📊 Integration Examples
Claude Desktop Integration
{
"mcpServers": {
"multi-service-server": {
"command": "python",
"args": ["/path/to/mcp_server.py"],
"cwd": "/path/to/project",
"env": {
"GOOGLE_CREDENTIALS_DIR": "/path/to/CREDENTIALS",
"GITHUB_TOKEN": "your_token_here"
}
}
}
}
Resume Building Workflow
# 1. Analyze repository
analysis = await analyze_github_repo_with_ai("user/repo", "comprehensive")
# 2. Generate resume summary
summary = await summarize_repo_analysis_for_resume(
"user/repo",
analysis,
"technical"
)
# 3. Add to Google Doc
await add_to_google_doc("doc_id", summary, "Projects")
GitHub Analysis to Google Docs Workflow
# 1. Analyze GitHub repository with AI
analysis = await analyze_github_repo_with_ai("user/repo", "comprehensive")
# 2. Option A: Create new document with analysis
doc_result = await create_google_doc(
"GitHub Analysis - user/repo",
analysis,
"Repository Analysis"
)
# 2. Option B: Add analysis to existing document
await add_to_google_doc(
"existing_doc_id",
analysis,
"GitHub Repository Analysis - user/repo"
)
🏗️ Project Structure
my-first-mcp-server/
├── 📄 mcp_server.py # Main MCP server
├── 🧪 test_client.py # Interactive test suite
├── 🧪 test_github_tool.py # GitHub tool testing
├── 🔧 debug_mcp_connection.py # MCP connection debugging
├── 🔑 reauthorize_google_apis.py # Google OAuth setup
├── ✅ validate_setup.py # Dependency validation
├── 📋 requirements.txt # Python dependencies
├── 🔒 requirements-lock.txt # Locked versions
├── 📖 README.md # Project documentation
├── 📖 SETUP.md # Detailed setup guide
├── 🌍 .env # Environment variables
├── 📁 CREDENTIALS/ # OAuth credentials
│ ├── client_secret.json
│ └── token.json
└── 📁 support files/ # Configuration and support files
├── claude_desktop_config.json
├── cursor_mcp_config.json
├── cursor_mcp_config_final.json
├── CURSOR_FIX_GUIDE.md
├── CURSOR_SETUP_GUIDE.md
├── demo_readme.py
├── presentation_outline.md
├── render_deployment_guide.md
└── run_env.py
🔍 Troubleshooting
Common Issues
| Issue | Solution |
|---|---|
| Google Auth Error | Run python reauthorize_google_apis.py |
| GitHub API Error | Check token permissions and expiration |
| Gemini API Error | Verify API key and quota limits |
| Import Error | Run pip install -r requirements.txt |
Debug Mode
import logging
logging.basicConfig(level=logging.DEBUG)
Validation Check
python validate_setup.py
🧪 Testing
Interactive Testing
python test_client.py
README Generation Demo
python demo_readme.py
Environment Verification
python run_env.py
🤝 Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
📄 License
This project is licensed under the MIT License - see the file for details.
🙏 Acknowledgments
- Model Context Protocol - For the excellent MCP framework
- Google APIs - For comprehensive service integration
- GitHub API - For repository management capabilities
- Google Gemini - For AI-powered analysis features
📞 Support
- 📖 Documentation: Check for detailed setup
- 🐛 Issues: Report bugs via GitHub Issues
- 💬 Discussions: Use GitHub Discussions for questions
- 🧪 Testing: Run
python test_client.pyfor interactive debugging
⭐ Star this repo if you find it helpful!
Made with ❤️ by the MCP community