Servidor API MCP Gemini
Servidor API de Google Gemini para Cursor y Claude. Gemini ofrece una variedad de funciones que incluyen generación de texto, análisis de imágenes y análisis de video.
Características principales
Generación de texto (utilizando el modelo gemini-2.0-flash)
Creación y análisis de imágenes
Análisis de vídeos de YouTube
Búsqueda web
Related MCP server: MCP Gemini Server
Empezar
Requisitos esenciales
Node.js 18.0.0 o posterior
npm o hilo
Clave API de Google (para acceder a la API de Gemini)
instalación
# 저장소 클론
git clone https://github.com/techkwon/mcp-gemini.git
cd mcp-gemini
# 의존성 설치
npm installPreferencias
Establezca su clave API de Google en
config.ts:
export default {
googleApiKey: "your_api_key_here",
// 기타 설정...
};Construir y ejecutar
# TypeScript 빌드
npm run build
# 서버 시작 (PM2 사용)
npm start
# 개발 모드로 실행
npm run devAdministración del servidor PM2
El servidor se gestiona automáticamente a través de PM2. Puede administrar su servidor con los siguientes comandos:
# 서버 상태 확인
npm run status
# 서버 로그 확인
npm run logs
# 서버 중지
npm run stop
# 서버 재시작
npm run restart
# 시스템 재시작 시 자동 실행 설정
pm2 startup
pm2 saveIntegración de Cursor/Claude
Configuración de MCP
Agregue las siguientes configuraciones a su archivo ~/.cursor/mcp.json :
{
"github.com/techkwon/mcp-gemini": {
"command": "npm",
"args": ["start"],
"cwd": "<프로젝트_경로>",
"env": {
"NODE_ENV": "production"
},
"disabled": false,
"autoStart": true,
"autoApprove": [
"gem-generate",
"gem-generate-image",
"gem-analyze-video",
"gem-search"
]
}
}Punto final de API
/gem-generate: Generar texto/gem-generate-image: Generación/análisis de imágenes/gem-analyze-video: Analiza vídeos de YouTube/gem-search: Búsqueda web
Actualizaciones importantes
Última versión (2024-03)
Implementación de la automatización del servidor a través de PM2
Unificado al modelo gemini-2.0-flash
Se agregaron funciones de reinicio automático y recuperación de errores.
Mejora tu configuración
Versión anterior
Se agregó la función de análisis de videos de YouTube
Capacidades mejoradas de creación y análisis de imágenes
Añadir funcionalidad de búsqueda web
Solución de problemas
Problemas comunes
Si el servidor no se inicia
# PM2 로그 확인 npm run logs # PM2 프로세스 상태 확인 npm run statusError de clave API
Asegúrese de que su clave API esté configurada correctamente en
config.ts.Comprobar las cuotas y permisos de la API de Gemini
Problemas de uso de memoria
Verifique la configuración del límite de memoria en
ecosystem.config.jsRealice un seguimiento del uso de la memoria con la monitorización de PM2
Contribuir
Bifurcar el proyecto
Crea tu rama de funciones (
git checkout -b feature/AmazingFeature)Confirme sus cambios (
git commit -m 'Add some AmazingFeature')Empujar a la rama (
git push origin feature/AmazingFeature)Abrir una solicitud de extracción
Licencia
Este proyecto sigue la licencia MIT. Consulte el archivo de LICENCIA para obtener más detalles.
contacto
Gerente de proyecto: techkwon Correo electrónico: techkwon@example.com Enlace del proyecto: https://github.com/techkwon/mcp-gemini
Dependencias clave
@google/generative-ai: ^0.1.3 (SDK de API de Gemini)
@fastify/cors: ^8.5.0 (soporte CORS)
fastify: ^4.29.0 (marco de servidor web)
googleapis: ^148.0.0 (compatibilidad con la API de Google)
mecanografiado: ^5.0.0
zod: ^3.24.2 (validación de datos)
pino: ^8.21.0 (registro)
Guía de integración de la aplicación de escritorio de Claude
Ubicación del archivo de configuración
Los archivos de configuración de la aplicación de escritorio Claude se encuentran en la siguiente ruta:
Ventanas:
%APPDATA%/Claude/config.jsonmacOS:
~/Library/Application Support/Claude/config.json
Ejemplo de configuración JSON
{
"apis": [
{
"name": "MCP Gemini",
"url": "http://localhost:8000",
"methods": [
{
"name": "텍스트 생성",
"method": "gem-generate",
"template": {
"jsonrpc": "2.0",
"id": "{uuid}",
"method": "gem-generate",
"params": {
"prompt": "{input}"
}
}
},
{
"name": "이미지 생성",
"method": "gem-generate-image",
"template": {
"jsonrpc": "2.0",
"id": "{uuid}",
"method": "gem-generate-image",
"params": {
"prompt": "{input}"
}
}
},
{
"name": "비디오 분석",
"method": "gem-analyze-video",
"template": {
"jsonrpc": "2.0",
"id": "{uuid}",
"method": "gem-analyze-video",
"params": {
"videoUrl": "{input}",
"query": "이 영상의 주요 내용을 요약해주세요"
}
}
},
{
"name": "웹 검색",
"method": "gem-search",
"template": {
"jsonrpc": "2.0",
"id": "{uuid}",
"method": "gem-search",
"params": {
"query": "{input}"
}
}
}
]
}
]
}Descripción de la variable
{uuid}: ID de solicitud único que se genera automáticamente.{input}: Texto ingresado en la ventana de chat de Claude
Cómo utilizar
Abra el archivo de configuración de la aplicación de escritorio Claude.
Agregue la configuración JSON anterior a su configuración existente.
Reinicie la aplicación de escritorio Claude.
Puedes usarlo en la ventana de chat de la siguiente manera:
@MCP Gemini.텍스트 생성 한국의 전통 음식에 대해 설명해주세요
@MCP Gemini.이미지 생성 한옥마을의 아름다운 풍경
@MCP Gemini.비디오 분석 https://youtube.com/watch?v=VIDEO_ID
@MCP Gemini.웹 검색 최신 인공지능 기술 동향Formato de respuesta
Todas las respuestas de la API siguen este formato:
{
"jsonrpc": "2.0",
"id": "요청에서 보낸 ID",
"result": {
"content": "응답 내용"
}
}Respuesta de error
Si ocurre un error, responda en el siguiente formato:
{
"jsonrpc": "2.0",
"id": "요청에서 보낸 ID",
"error": {
"code": 오류코드,
"message": "오류 메시지",
"data": {
"details": "상세 오류 정보"
}
}
}Manejo de errores
El servidor devuelve una respuesta de error apropiada en las siguientes situaciones:
400: Formato de solicitud incorrecto
401: Error de autenticación (relacionado con la clave API)
500: Error interno del servidor
Consideraciones de seguridad
Asegúrese de administrar su clave API como una variable de entorno.
En un entorno de producción, agregue la configuración de seguridad adecuada.
Tenga cuidado de no registrar información confidencial.
Solución de problemas
Conflicto portuario
Si el puerto 8000 ya está en uso:
# 기존 Node.js 프로세스 종료
pkill -f "node"Estabilidad del servidor
Si el servidor finaliza inesperadamente:
Considere utilizar PM2 u otro gestor de procesos.
Verifique los registros para determinar la causa de la terminación.
Guía de desarrollo
Explotación florestal
Se implementó el registro estructurado utilizando el registrador Pino
En el entorno de desarrollo, los registros legibles se generan a través de pino-pretty.
Seguridad de tipos
Garantice la seguridad de tipos en tiempo de ejecución utilizando TypeScript y Zod
Se implementa la validación de esquema para solicitudes/respuestas de API.
Guía de registro del mercado de CLINE MCP
Preparación preliminar
Su repositorio de GitHub debe ser público
El archivo README.md debe contener instrucciones claras de instalación y configuración.
(Opcional) Puede proporcionar instrucciones de instalación adicionales para su agente de IA a través
llms-install.md.
Procedimiento de registro
Crear un nuevo problema en el repositorio de CLINE MCP Marketplace
El número incluye la siguiente información:
URL del repositorio de GitHub: https://github.com/techkwon/mcp-gemini
Imagen del logotipo: archivo PNG en tamaño 400×400
Razón adicional: Ejemplo del valor que este servidor MCP puede proporcionar a los usuarios de CLINE: GXP12
Comprueba si CLINE puede instalar correctamente un servidor con solo README.md
Proceso de aprobación
El equipo de CLINE revisa los servidores MCP enviados
Estamos realizando una verificación de seguridad y estabilidad.
Una vez aprobado, aparecerá en el Marketplace y será accesible para todos los usuarios de CLINE.
Guía de instalación optimizada
Puede proporcionar instrucciones de instalación adicionales para su agente de IA creando un archivo llms-install.md :
# MCP Gemini 서버 설치 가이드 (AI 에이전트용)
## 환경 요구사항
- Node.js 18.0.0 이상
- npm 또는 yarn
- Google AI Studio API 키
## 설치 단계
1. 저장소 클론
2. 의존성 설치: `npm install`
3. 환경 변수 설정: GOOGLE_API_KEY 추가
4. 빌드: `npm run build`
5. 서버 실행: `npm run start`
## 설정 검증
- 8000번 포트 사용 가능 여부 확인
- API 키 유효성 검증
- CORS 설정 확인
## 문제 해결
- 포트 충돌 시 해결 방법
- API 키 오류 해결 방법
- 일반적인 설치 문제 해결 가이드