Yandex Cloud
Un servidor no oficial para interactuar con la API de Yandex Cloud.
Documentación
yandex-cloude-mcp
Servidor mcp no oficial para interactuar con la API de Yandex Cloud.
Funcionalidad:
📋 Список всех bucket в вашем аккаунте
📁 Просмотр содержимого конкретного bucket
⬇️ Скачивание файлов в локальную папку
Detalles técnicos:
- Utiliza el AWS SDK oficial (compatible con Yandex Cloud)
- Endpoint configurado para Yandex Cloud (https://storage.yandexcloud.net)
- Soporta todas las operaciones principales a través del protocolo MCP
Seguridad:
- Las claves de acceso se almacenan en variables de entorno
- Se pueden configurar los permisos de acceso mediante cuentas de servicio
Después de crear y configurar este servidor, Claude podrá conectarse a sus buckets en Yandex Cloud y ayudarle con el análisis de datos, la gestión de archivos y otras tareas!
Paso 1: Creación del proyecto
Ejecute los comandos en la terminal:
mkdir yandex-cloud-mcp
cd yandex-cloud-mcp
npm init -y
Paso 2: Instalación de dependencias
Dependencias principales
npm install @modelcontextprotocol/sdk @aws-sdk/client-s3 dotenv
Dev зависимости для TypeScript
npm install -D typescript @types/node ts-node nodemon
Paso 3: Creación de la estructura de carpetas
mkdir src
Paso 4: Archivos de configuración
Cree el archivo tsconfig.json en la raíz del proyecto:
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist"]
}
Actualice package.json agregando scripts:
{
"scripts": {
"build": "tsc",
"start": "node dist/index.js",
"dev": "ts-node src/index.ts",
"watch": "nodemon --exec ts-node src/index.ts"
}
}
Paso 5: Archivo de variables de entorno Cree el archivo .env en la raíz del proyecto:
YANDEX_ACCESS_KEY_ID=your_yandex_access_key_id_here
YANDEX_SECRET_ACCESS_KEY=your_yandex_secret_access_key_here
⚠️ Por ahora deje los valores de placeholder; los completaremos después de obtener las claves Paso 6: Código principal Cree el archivo src/index.ts y copie allí todo el código del artefacto (también llamado index.ts) anterior (comenzando con #!/usr/bin/env node).
Paso 7: Obtención de claves de acceso en Yandex Cloud
Vaya a la consola de Yandex Cloud: https://console.cloud.yandex.ru/ Inicie sesión en su cuenta o cree una nueva si no tiene una Cree o seleccione un directorio (carpeta) en su nube Vaya a IAM:
- En el menú izquierdo busque "Identity and Access Management" o "IAM"
- Seleccione "Cuentas de servicio"
Cree una cuenta de servicio:
- Haga clic en "Crear cuenta de servicio"
- Ingrese un nombre (por ejemplo, "mcp-s3-access")
- Asigne el rol storage.editor (para acceso completo) o storage.viewer (solo lectura)
- Haga clic en "Crear"
Cree una clave de acceso estática:
- Abra la cuenta de servicio creada
- Vaya a la pestaña "Claves de acceso"
- Haga clic en "Crear nueva clave" → "Clave de acceso estática"
- Guarde el Access Key ID y la Secret Access Key (¡se muestran solo una vez!)
Paso 8: Actualización del archivo .env Abra el archivo .env y reemplace los valores de placeholder con sus claves:
YANDEX_ACCESS_KEY_ID=YCAJEваш_access_key_id_здесь
YANDEX_SECRET_ACCESS_KEY=YCваш_очень_длинный_secret_key_здесь
Paso 9: Pruebas Intente iniciar el servidor: bashnpm run build npm start Si todo está configurado correctamente, debería aparecer el mensaje: Servidor MCP de Yandex Cloud iniciado
Paso 10: Conexión a Claude Desktop
- Encuentre el archivo de configuración de Claude Desktop El archivo de configuración se encuentra en diferentes lugares según el sistema operativo:
Windows:
%APPDATA%\Claude\claude_desktop_config.json
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Linux:
~/.config/Claude/claude_desktop_config.json
- Cree o edite la configuración Si el archivo no existe, créelo. Si existe, agregue su servidor. Nuevo archivo de configuración:
{
"mcpServers": {
"yandex-cloud": {
"command": "node",
"args": ["/полный/путь/к/вашему/проекту/yandex-cloud-mcp/dist/index.js"],
"env": {
"YANDEX_ACCESS_KEY_ID": "ваш_access_key_id",
"YANDEX_SECRET_ACCESS_KEY": "ваш_secret_access_key"
}
}
}
}
Si el archivo ya existe, agregue en la sección mcpServers:
{
"mcpServers": {
"существующие-серверы": { ... },
"yandex-cloud": {
"command": "node",
"args": ["/полный/путь/к/вашему/проекту/yandex-cloud-mcp/dist/index.js"],
"env": {
"YANDEX_ACCESS_KEY_ID": "ваш_access_key_id",
"YANDEX_SECRET_ACCESS_KEY": "ваш_secret_access_key"
}
}
}
}
- Obtenga la ruta completa del proyecto En la terminal, estando en la carpeta yandex-cloud-mcp:
Windows:
cmdecho %cd%\dist\index.js
macOS/Linux:
bashecho "$(pwd)/dist/index.js"
- Reinicie Claude Desktop Cierre completamente y vuelva a abrir la aplicación Claude Desktop.
- Verifique la conexión Después de reiniciar, intente escribir en el chat: ¿Puedes mostrar mis buckets en Yandex Cloud? Si todo está configurado correctamente, Claude podrá usar las herramientas para trabajar con su Yandex Cloud. Importante: Reemplace /полный/путь/к/вашему/проекту/ por la ruta real a su carpeta de proyecto.
Explicaciones de los pasos:
Paso 4:
Creación de tsconfig.json
- Abra un editor de texto (por ejemplo, VS Code, Notepad++ o cualquier otro)
- Cree un nuevo archivo en la carpeta raíz yandex-cloud-mcp (donde está package.json)
- Nombre el archivo tsconfig.json (importante: exactamente ese nombre, con extensión .json)
- Copie y pegue este código:
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist"]
}
- Guarde el archivo
Actualización de package.json
- Abra el archivo package.json (ya existe después de npm init -y)
- Busque la sección "scripts" (puede verse así):
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
}
- Reemplácela por:
"scripts": {
"build": "tsc",
"start": "node dist/index.js",
"dev": "ts-node src/index.ts",
"watch": "nodemon --exec ts-node src/index.ts",
"test": "echo \"Error: no test specified\" && exit 1"
}
- Guarde el archivo
Método alternativo (mediante terminal) Si prefiere la línea de comandos:
- Creación de tsconfig.json
cat > tsconfig.json << 'EOF'
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"outDir": "./dist",
"rootDir": "./src",
"strict": true,
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true
},
"include": ["src/**/*"],
"exclude": ["node_modules", "dist"]
}
EOF
- Verificación Después de realizarlo, debería tener la siguiente estructura:
yandex-cloud-mcp/
├── node_modules/
├── src/
├── package.json
├── package-lock.json
└── tsconfig.json