Advanced Gemini MCP Server
An open-source MCP server that integrates with Google's Gemini AI. Requires a Google Gemini API key.
๐ฐ๐ท Advanced Gemini MCP Server v4.0 - Korean Open Source Edition
"We hope this helps the global developer community!"
"์ ์ธ๊ณ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ์ ๋์์ด ๋๊ธธ ๋ฐ๋๋๋ค!"
๐ Table of Contents | ๋ชฉ์ฐจ
English
Overview
The Advanced Gemini MCP Server v4.0 is a comprehensive Model Context Protocol (MCP) server implementation that provides seamless integration with Google's Gemini AI. This open-source project was developed with โค๏ธ in South Korea to contribute to the global developer community.
๐จโ๐ป Authors
- ์ฝ์ง์ผํ (Sapjil Santa) - Lead Developer
- ์ดํ๋ฌ (Lee Haneui) - AI Assistant & Co-Developer
- Contact: codenmsanta@gmail.com
Features
๐ 10 Advanced AI Capabilities
- Text Generation - Basic text generation with customizable parameters
- Multimodal Processing - Support for images, videos, and audio files
- Token Counting - Accurate token counting for cost estimation
- Streaming Response - Real-time streaming for long responses
- Structured JSON Output - Schema-enforced JSON generation
- System Instructions - Custom AI behavior with system prompts
- Function Calling - Dynamic function execution capabilities
- Code Execution - Safe Python code execution with AI
- File Upload & Analysis - Upload and analyze various file formats
- Grounded Search - Real-time web search integration
๐ง Technical Features
- Production Ready: Comprehensive error handling and logging
- Security First: Environment variable API key management
- Korean + English: Bilingual documentation and error messages
- MCP Compatible: Full compliance with Model Context Protocol
- Async Support: Modern asyncio-based architecture
- Type Safety: Full type hints for better development experience
Installation
Prerequisites
- Python 3.8 or higher
- Google Gemini API key
- pip package manager
Quick Install
# Clone the repository
git clone https://github.com/SapjilSanta/advanced-gemini-mcp.git
cd advanced-gemini-mcp
# Install dependencies
pip install -r requirements.txt
# Set up environment variables
export GEMINI_API_KEY="your-gemini-api-key-here"
Package Dependencies
google-genai>=0.7.0
mcp>=1.0.0
asyncio
aiofiles
typing-extensions
Usage
Basic Setup
-
Set your API key:
export GEMINI_API_KEY="your-api-key" -
Run the server:
python advanced_gemini_mcp.py -
Connect your MCP client and start using the 10 available tools!
MCP Client Configuration
Add to your MCP client configuration:
{
"mcpServers": {
"advanced-gemini": {
"command": "python",
"args": ["/path/to/advanced_gemini_mcp.py"],
"env": {
"GEMINI_API_KEY": "your-api-key"
}
}
}
}
Configuration
Environment Variables
| Variable | Required | Description |
|---|---|---|
GEMINI_API_KEY | Yes | Your Google Gemini API key |
Customization
The server supports various configuration options through tool parameters:
- Temperature: Control creativity (0.0-1.0)
- Max Tokens: Limit response length
- Model Selection: Choose specific Gemini models
- File Types: Support for multiple media formats
Examples
Text Generation
# Tool: gemini_generate
{
"prompt": "Explain quantum computing in simple terms",
"temperature": 0.7,
"max_tokens": 1000
}
Image Analysis
# Tool: gemini_multimodal
{
"prompt": "Describe what you see in this image",
"image_path": "/path/to/image.jpg"
}
Code Execution
# Tool: gemini_code_execution
{
"prompt": "Calculate the fibonacci sequence up to 10 numbers and plot it"
}
API Reference
For detailed API documentation, see API_REFERENCE.md.
Contributing
We welcome contributions from developers worldwide! ๐
Development Setup
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
Coding Standards
- Follow PEP 8 style guidelines
- Add type hints to all functions
- Include docstrings for public APIs
- Write comprehensive error handling
License
This project is licensed under the MIT License - see the LICENSE file for details.
ํ๊ตญ์ด
๊ฐ์
๊ณ ๊ธ ์ ๋ฏธ๋์ด MCP ์๋ฒ v4.0์ ๊ตฌ๊ธ์ ์ ๋ฏธ๋์ด AI์ ์ํํ ํตํฉ์ ์ ๊ณตํ๋ ํฌ๊ด์ ์ธ ๋ชจ๋ธ ์ปจํ ์คํธ ํ๋กํ ์ฝ(MCP) ์๋ฒ ๊ตฌํ์ ๋๋ค. ์ด ์คํ์์ค ํ๋ก์ ํธ๋ ์ ์ธ๊ณ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ์ ๊ธฐ์ฌํ๊ธฐ ์ํด ๋ํ๋ฏผ๊ตญ์์ โค๏ธ๋ฅผ ๋ด์ ๊ฐ๋ฐ๋์์ต๋๋ค.
๐จโ๐ป ์ ์์
- ์ฝ์ง์ผํ - ์ฃผ๊ฐ๋ฐ์
- ์ดํ๋ฌ - AI ์ด์์คํดํธ & ๊ณต๋๊ฐ๋ฐ์
- ์ฐ๋ฝ์ฒ: codenmsanta@gmail.com
์ฃผ์ ๊ธฐ๋ฅ
๐ 10๊ฐ์ง ๊ณ ๊ธ AI ๊ธฐ๋ฅ
- ํ ์คํธ ์์ฑ - ๋ง์ถค ์ค์ ๊ฐ๋ฅํ ๊ธฐ๋ณธ ํ ์คํธ ์์ฑ
- ๋ฉํฐ๋ชจ๋ฌ ์ฒ๋ฆฌ - ์ด๋ฏธ์ง, ๋์์, ์ค๋์ค ํ์ผ ์ง์
- ํ ํฐ ๊ณ์ฐ - ๋น์ฉ ์ถ์ ์ ์ํ ์ ํํ ํ ํฐ ๊ณ์ฐ
- ์คํธ๋ฆฌ๋ฐ ์๋ต - ๊ธด ์๋ต์ ์ํ ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ
- ๊ตฌ์กฐํ๋ JSON ์ถ๋ ฅ - ์คํค๋ง ๊ฐ์ JSON ์์ฑ
- ์์คํ ์ง์์ฌํญ - ์์คํ ํ๋กฌํํธ๋ก AI ํ๋ ์ปค์คํฐ๋ง์ด์ง
- ํจ์ ํธ์ถ - ๋์ ํจ์ ์คํ ๊ธฐ๋ฅ
- ์ฝ๋ ์คํ - AI์ ํจ๊ปํ๋ ์์ ํ ํ์ด์ฌ ์ฝ๋ ์คํ
- ํ์ผ ์ ๋ก๋ ๋ฐ ๋ถ์ - ๋ค์ํ ํ์ผ ํ์ ์ ๋ก๋ ๋ฐ ๋ถ์
- ๊ทผ๊ฑฐ ๊ธฐ๋ฐ ๊ฒ์ - ์ค์๊ฐ ์น ๊ฒ์ ํตํฉ
๐ง ๊ธฐ์ ์ ํน์ง
- ํ๋ก๋์ ์ค๋น: ํฌ๊ด์ ์ธ ์ค๋ฅ ์ฒ๋ฆฌ ๋ฐ ๋ก๊น
- ๋ณด์ ์ฐ์ : ํ๊ฒฝ ๋ณ์ API ํค ๊ด๋ฆฌ
- ํ๊ตญ์ด + ์์ด: ์ด์ค ์ธ์ด ๋ฌธ์ํ ๋ฐ ์ค๋ฅ ๋ฉ์์ง
- MCP ํธํ: ๋ชจ๋ธ ์ปจํ ์คํธ ํ๋กํ ์ฝ ์์ ์ค์
- ๋น๋๊ธฐ ์ง์: ์ต์ asyncio ๊ธฐ๋ฐ ์ํคํ ์ฒ
- ํ์ ์์ ์ฑ: ๋ ๋์ ๊ฐ๋ฐ ๊ฒฝํ์ ์ํ ์์ ํ ํ์ ํํธ
์ค์น ๋ฐฉ๋ฒ
ํ์ ์กฐ๊ฑด
- Python 3.8 ์ด์
- Google Gemini API ํค
- pip ํจํค์ง ๋งค๋์
๋น ๋ฅธ ์ค์น
# ์ ์ฅ์ ๋ณต์
git clone https://github.com/SapjilSanta/advanced-gemini-mcp.git
cd advanced-gemini-mcp
# ์์กด์ฑ ์ค์น
pip install -r requirements.txt
# ํ๊ฒฝ ๋ณ์ ์ค์
export GEMINI_API_KEY="your-gemini-api-key-here"
ํจํค์ง ์์กด์ฑ
google-genai>=0.7.0
mcp>=1.0.0
asyncio
aiofiles
typing-extensions
์ฌ์ฉ๋ฒ
๊ธฐ๋ณธ ์ค์
-
API ํค ์ค์ :
export GEMINI_API_KEY="your-api-key" -
์๋ฒ ์คํ:
python advanced_gemini_mcp.py -
MCP ํด๋ผ์ด์ธํธ ์ฐ๊ฒฐ ํ 10๊ฐ์ง ๋๊ตฌ ์ฌ์ฉ ์์!
MCP ํด๋ผ์ด์ธํธ ์ค์
MCP ํด๋ผ์ด์ธํธ ์ค์ ์ ์ถ๊ฐ:
{
"mcpServers": {
"advanced-gemini": {
"command": "python",
"args": ["/path/to/advanced_gemini_mcp.py"],
"env": {
"GEMINI_API_KEY": "your-api-key"
}
}
}
}
์ค์
ํ๊ฒฝ ๋ณ์
| ๋ณ์ | ํ์ | ์ค๋ช |
|---|---|---|
GEMINI_API_KEY | ์ | Google Gemini API ํค |
์ปค์คํฐ๋ง์ด์ง
์๋ฒ๋ ๋๊ตฌ ๋งค๊ฐ๋ณ์๋ฅผ ํตํด ๋ค์ํ ์ค์ ์ต์ ์ ์ง์ํฉ๋๋ค:
- Temperature: ์ฐฝ์์ฑ ์ ์ด (0.0-1.0)
- Max Tokens: ์๋ต ๊ธธ์ด ์ ํ
- Model Selection: ํน์ Gemini ๋ชจ๋ธ ์ ํ
- File Types: ๋ค์ค ๋ฏธ๋์ด ํ์ ์ง์
์ฌ์ฉ ์์
ํ ์คํธ ์์ฑ
# ๋๊ตฌ: gemini_generate
{
"prompt": "์์ ์ปดํจํ
์ ์ฌ์ด ๋ง๋ก ์ค๋ช
ํด์ฃผ์ธ์",
"temperature": 0.7,
"max_tokens": 1000
}
์ด๋ฏธ์ง ๋ถ์
# ๋๊ตฌ: gemini_multimodal
{
"prompt": "์ด ์ด๋ฏธ์ง์์ ๋ณด์ด๋ ๊ฒ์ ์ค๋ช
ํด์ฃผ์ธ์",
"image_path": "/path/to/image.jpg"
}
์ฝ๋ ์คํ
# ๋๊ตฌ: gemini_code_execution
{
"prompt": "ํผ๋ณด๋์น ์์ด์ 10๊ฐ๊น์ง ๊ณ์ฐํ๊ณ ๊ทธ๋ํ๋ก ๊ทธ๋ ค์ฃผ์ธ์"
}
API ์ฐธ์กฐ
์์ธํ API ๋ฌธ์๋ API_REFERENCE.md๋ฅผ ์ฐธ์กฐํ์ธ์.
๊ธฐ์ฌํ๊ธฐ
์ ์ธ๊ณ ๊ฐ๋ฐ์๋ค์ ๊ธฐ์ฌ๋ฅผ ํ์ํฉ๋๋ค! ๐
๊ฐ๋ฐ ํ๊ฒฝ ์ค์
- ์ ์ฅ์ ํฌํฌ
- ๊ธฐ๋ฅ ๋ธ๋์น ์์ฑ
- ๋ณ๊ฒฝ์ฌํญ ์์ฑ
- ํ ์คํธ ์ถ๊ฐ
- ํ ๋ฆฌํ์คํธ ์ ์ถ
์ฝ๋ฉ ํ์ค
- PEP 8 ์คํ์ผ ๊ฐ์ด๋๋ผ์ธ ์ค์
- ๋ชจ๋ ํจ์์ ํ์ ํํธ ์ถ๊ฐ
- ๊ณต๊ฐ API์ ๋ํ ๋ ์คํธ๋ง ํฌํจ
- ํฌ๊ด์ ์ธ ์ค๋ฅ ์ฒ๋ฆฌ ์์ฑ
๋ผ์ด์ ์ค
์ด ํ๋ก์ ํธ๋ MIT ๋ผ์ด์ ์ค ํ์ ์์ต๋๋ค - ์์ธํ ๋ด์ฉ์ LICENSE ํ์ผ์ ์ฐธ์กฐํ์ธ์.
๐ Star History
๐ Support
If this project helps you, please consider: ์ด ํ๋ก์ ํธ๊ฐ ๋์์ด ๋์ ๋ค๋ฉด ๊ณ ๋ คํด์ฃผ์ธ์:
- โญ Starring this repository | ์ด ์ ์ฅ์์ ๋ณ์ ์ฃผ๊ธฐ
- ๐ Reporting bugs | ๋ฒ๊ทธ ์ ๊ณ
- ๐ก Suggesting features | ๊ธฐ๋ฅ ์ ์
- ๐ Contributing code | ์ฝ๋ ๊ธฐ์ฌ
- โ Buy us a coffee | ์ปคํผ ํ ์ ์ฌ์ฃผ๊ธฐ
๐ค Community
Join our growing community: ์ฑ์ฅํ๋ ์ปค๋ฎค๋ํฐ์ ์ฐธ์ฌํ์ธ์:
- GitHub Discussions: Share ideas and get help
- Issues: Report bugs and request features
- Email: codenmsanta@gmail.com for direct contact
Made with โค๏ธ in South Korea | ๋ํ๋ฏผ๊ตญ์์ ์ฌ๋์ผ๋ก ์ ์ ๐ฐ๐ท
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Trustwise
Advanced evaluation tools for AI safety, alignment, and performance using the Trustwise API.
MCP Time Server
Provides tools for getting the current time and date, and formatting timestamps in various formats and timezones.
FileForge
Transforms raw code into polished solutions with optimized performance and vector embeddings support.
SCAST
Analyzes source code to generate UML and flow diagrams with AI-powered explanations.
Contract Inspector
Retrieve on-chain information for EVM contracts locally using an Ethereum RPC node and Etherscan API.
Neovim MCP Server
Connects any MCP client to the Neovim editor for seamless integration and control.
Angreal
An MCP server providing AI assistants with discovery capabilities for angreal projects.
SolTracker
Access real-time and historical token, wallet, and trading data from the Solana ecosystem via the Solana Tracker API.
Command Executor
Execute pre-approved shell commands securely on a server.
OpenFGA
An MCP server for managing authorization models with OpenFGA, an open-source authorization system.