# Resumen del proyecto MCP OCI Server

## Descripción general

El servidor MCP OCI (Model Context Protocol para Oracle Cloud Infrastructure) es una implementación que permite a Claude Desktop interactuar con los recursos de Oracle Cloud Infrastructure a través del protocolo MCP. Con esta herramienta, Claude puede gestionar instancias de computación en la nube de Oracle, permitiendo a los usuarios realizar operaciones como listar, iniciar, detener y reiniciar instancias mediante instrucciones en lenguaje natural.

## Estructura del proyecto

```
mcp-oci-server/
├── src/                          # Código fuente
│   ├── cli.ts                    # Punto de entrada para CLI
│   ├── index.ts                  # Exportaciones principales
│   ├── test-server.ts            # Servidor de prueba
│   ├── oci/                      # Módulo de cliente OCI
│   │   └── client.ts             # Cliente OCI
│   ├── server/                   # Módulo de servidor MCP
│   │   └── server.ts             # Implementación del servidor
│   └── tools/                    # Herramientas MCP
│       └── oci-tools.ts          # Herramientas OCI para MCP
├── CHANGES.md                    # Registro de cambios
├── CLAUDE-EXAMPLES.md            # Ejemplos de uso con Claude
├── INSTRUCTIONS.md               # Instrucciones detalladas
├── README.md                     # Documentación general
├── claude_desktop_config.example.json  # Ejemplo de configuración Claude
├── oci-config.example            # Ejemplo de configuración OCI
├── oci-keys-guide.md             # Guía para generar claves OCI
├── .eslintrc                     # Configuración de ESLint
├── .gitignore                    # Archivos ignorados por Git
├── .npmignore                    # Archivos ignorados por npm
├── package.json                  # Metadatos y dependencias del proyecto
└── tsconfig.json                 # Configuración de TypeScript
```

## Tecnologías utilizadas

- **TypeScript**: Lenguaje principal para la implementación
- **Node.js**: Entorno de ejecución
- **Model Context Protocol SDK**: Implementación oficial del protocolo MCP
- **OCI SDK para Node.js**: SDK oficial de Oracle Cloud Infrastructure
- **Zod**: Validación de esquemas para las herramientas MCP

## Funcionalidades principales

1. **Conexión a Oracle Cloud**: Utiliza el SDK oficial de OCI para conectarse a la nube de Oracle
2. **Gestión de perfiles OCI**: Permite usar diferentes perfiles de configuración de OCI
3. **Herramientas para instancias**: Listar, obtener detalles, iniciar, detener y reiniciar instancias
4. **Integración con Claude Desktop**: Configuración para que Claude pueda utilizar el servidor

## Guía rápida de instalación

1. **Clonar el repositorio**:
   ```bash
   git clone https://github.com/jocebal/mcp-oci-server.git
   cd mcp-oci-server
   ```

2. **Instalar dependencias**:
   ```bash
   npm install
   ```

3. **Compilar el proyecto**:
   ```bash
   npm run build
   ```

4. **Probar el servidor**:
   ```bash
   npm run test-server
   ```

5. **Configurar Claude Desktop**:
   Editar el archivo `claude_desktop_config.json` en la ubicación correspondiente a tu sistema operativo y añadir la configuración de la herramienta "oracle-cloud" según se describe en el archivo `claude_desktop_config.example.json`.

## Próximos pasos y mejoras

1. **Añadir más herramientas**: Expandir a otros recursos de OCI como balanceadores de carga, almacenamiento, bases de datos, etc.
2. **Mejorar la documentación**: Añadir más ejemplos y casos de uso
3. **Implementar pruebas unitarias**: Añadir pruebas automatizadas para garantizar la calidad
4. **Añadir soporte para más funcionalidades de MCP**: Implementar recursos y prompts

## Recursos adicionales

- [Documentación oficial de OCI](https://docs.oracle.com/en-us/iaas/Content/home.htm)
- [Documentación de Model Context Protocol](https://modelcontextprotocol.io/)
- [SDK de Model Context Protocol](https://github.com/modelcontextprotocol/typescript-sdk)
