Skip to main content
Glama

MCP 제미니 서버

클로드와 같은 AI 도우미가 Google의 Gemini API와 상호 작용할 수 있도록 하는 MCP(Model Context Protocol)의 서버 구현입니다.

프로젝트 개요

이 프로젝트는 모델 컨텍스트 프로토콜(MCP)을 따르는 서버를 구현하여 AI 비서가 Google Gemini 모델과 통신할 수 있도록 합니다. 이 MCP 서버를 통해 AI 비서는 Gemini API를 통해 텍스트 생성, 텍스트 분석을 요청하고 채팅 대화를 유지할 수 있습니다.

Related MCP server: Gemini MCP Server

특징

  • 클라이언트-서버 통신 : 클라이언트와 서버 간의 안전한 메시지 교환을 위해 MCP 프로토콜을 구현합니다.

  • 메시지 처리 : 클라이언트 요청을 처리하고 적절한 응답을 보냅니다.

  • 오류 처리 및 로깅 : 서버 활동을 기록하고 원활한 오류 복구를 보장합니다.

  • 환경 변수 지원 : .env 파일을 사용하여 중요한 정보를 안전하게 저장합니다.

  • API 테스트 및 디버깅 : Postman과 테스트 스크립트를 사용하여 수동 및 자동 테스트를 지원합니다.

설치

필수 조건

  • Python 3.7 이상

  • Google AI API 키

설정

  1. 이 저장소를 복제하세요:

지엑스피1

  1. 가상 환경 만들기:

python -m venv venv
  1. 가상 환경을 활성화합니다.

    • Windows: venv\Scripts\activate

    • macOS/Linux: source venv/bin/activate

  2. 종속성 설치:

pip install -r requirements.txt
  1. Gemini API 키로 루트 디렉토리에 .env 파일을 만듭니다.

GEMINI_API_KEY=your_api_key_here

용법

  1. 서버를 시작합니다:

python server.py
  1. 서버는 기본적으로 http://localhost:5000/ 에서 실행됩니다.

  2. POST 메서드를 사용하여 /mcp 엔드포인트에 MCP 요청 보내기

예제 요청

import requests url = 'http://localhost:5000/mcp' payload = { 'action': 'generate_text', 'parameters': { 'prompt': 'Write a short poem about AI', 'temperature': 0.7 } } response = requests.post(url, json=payload) print(response.json())

API 참조

엔드포인트

  • GET /health : 서버가 실행 중인지 확인

  • GET /list-models : 사용 가능한 Gemini 모델 목록

  • POST /mcp : MCP 요청의 주요 엔드포인트

MCP 작업

1. 텍스트 생성

Gemini를 사용하여 텍스트 콘텐츠를 생성하세요.

매개변수:

  • prompt (필수): 생성을 위한 텍스트 프롬프트

  • temperature (선택 사항): 무작위성(0.0~1.0)을 제어합니다.

  • max_tokens (선택 사항): 생성할 최대 토큰 수

예:

{ "action": "generate_text", "parameters": { "prompt": "Write a short story about a robot", "temperature": 0.8, "max_tokens": 500 } }

2. 텍스트 분석

텍스트 내용을 분석합니다.

매개변수:

  • text (필수): 분석할 텍스트

  • analysis_type (선택 사항): 분석 유형('감정', '요약', '키워드' 또는 '일반')

예:

{ "action": "analyze_text", "parameters": { "text": "The weather today is wonderful! I love how the sun is shining.", "analysis_type": "sentiment" } }

3. 채팅

쌍둥이자리와 대화를 나눠보세요.

매개변수:

  • messages (필수): '역할'과 '내용'을 포함하는 메시지 객체 배열

  • temperature (선택 사항): 무작위성(0.0~1.0)을 제어합니다.

예:

{ "action": "chat", "parameters": { "messages": [ {"role": "user", "content": "Hello, how are you?"}, {"role": "assistant", "content": "I'm doing well! How can I help?"}, {"role": "user", "content": "Tell me about quantum computing"} ], "temperature": 0.7 } }

오류 처리

서버는 적절한 HTTP 상태 코드와 오류 메시지를 반환합니다.

  • 200 : 요청 성공

  • 400 : 잘못된 요청(매개변수가 누락되었거나 잘못됨)

  • 500 : 서버 오류(API 문제 등)

테스트

포함된 테스트 스크립트를 사용하여 다양한 기능을 테스트하세요.

# Test all functionalities python test_client.py # Test specific functionality python test_client.py text # Test text generation python test_client.py analyze # Test text analysis python test_client.py chat # Test chat functionality

MCP 프로토콜 사양

여기에 구현된 모델 컨텍스트 프로토콜은 다음 사양을 따릅니다.

  1. 요청 형식 :

    • action : 작업을 지정하는 문자열

    • parameters : 작업별 매개변수를 포함하는 객체

  2. 응답 형식 :

    • result : 작업 결과를 담고 있는 객체

    • error : 오류를 설명하는 문자열(해당되는 경우)

특허

MIT 라이센스

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/amitsh06/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server