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: [email protected]
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 ์ด์์คํดํธ & ๊ณต๋๊ฐ๋ฐ์
- ์ฐ๋ฝ์ฒ: [email protected]
์ฃผ์ ๊ธฐ๋ฅ
๐ 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: [email protected] for direct contact
Made with โค๏ธ in South Korea | ๋ํ๋ฏผ๊ตญ์์ ์ฌ๋์ผ๋ก ์ ์ ๐ฐ๐ท
Related Servers
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Safe Local Python Executor
A tool for safely executing local Python code without requiring external data files.
MCP Proxy
A thin proxy that allows clients to connect to MCP servers over HTTP without streaming transport.
Frame0 MCP Server
Create and modify wireframes in the Frame0 app through natural language prompts.
Kontxt
Indexes local code repositories to provide codebase context to AI clients.
GPT Image 1
Generate high-quality AI images with OpenAI's GPT-Image-1 model and save them directly to your local machine.
AltTesterยฎ AI Extension
MCP server for game test automation
MAXential Thinking MCP
Gives Claude explicit tools for reasoning: adding thoughts, branching to explore alternatives, revising earlier thinking, and navigating thought history. 11 focused tools designed for how Claude actually thinks
Voiceflow MCP Client
A Node.js client that integrates with remote MCP servers to provide tools for Voiceflow Agents.
Background Process MCP
A server that provides background process management capabilities, enabling LLMs to start, stop, and monitor long-running command-line processes.
Chromewright
Browser automation via Chrome DevTools Protocol