OneDrive MCP Server
# 🔵 OneDrive MCP Server para Claude
Servidor MCP (Model Context Protocol) que conecta Claude con OneDrive a través de Microsoft Graph API para listar, buscar, crear, mover, copiar y compartir archivos directamente desde la conversación.
## 🛠️ Herramientas disponibles
| Herramienta | Descripción |
|---|---|
| `list_files` | Lista archivos y carpetas en una ruta |
| `get_file` | Obtiene detalles de un archivo o carpeta |
| `create_folder` | Crea una carpeta |
| `delete_file` | Elimina un archivo o carpeta |
| `move_file` | Mueve un archivo a otra carpeta |
| `copy_file` | Copia un archivo a otra carpeta |
| `search_files` | Busca archivos por nombre o contenido |
| `share_file` | Genera enlace para compartir (view/edit, anónimo/org) |
| `get_storage_info` | Muestra espacio total, usado y disponible |
---
## 🚀 Instalación
### 1. Instalar dependencias y compilar
```bash
npm install
npm run build
```
### 2. Registrar una aplicación en Azure AD
1. Ve a [https://portal.azure.com](https://portal.azure.com) → **Azure Active Directory** → **App registrations** → **New registration**
2. Nombre: `Claude OneDrive MCP`
3. En **API permissions** agrega:
- `Files.ReadWrite.All` (Application)
- `User.Read.All` (Application)
4. Haz clic en **Grant admin consent**
5. En **Certificates & secrets** → **New client secret** → copia el valor
### 3. Configurar variables de entorno
```bash
cp .env.example .env
```
Edita `.env`:
```env
TENANT_ID=tu-tenant-id
CLIENT_ID=tu-client-id
CLIENT_SECRET=tu-client-secret
USER_EMAIL=usuario@tudominio.com
```
> Puedes encontrar el `TENANT_ID` y `CLIENT_ID` en la página principal de tu app registrada en Azure AD.
---
## 🔌 Conectar con Claude Desktop
Edita el archivo de configuración de Claude Desktop:
**Windows:** `%LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"onedrive": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": ["C:\\ruta\\al\\proyecto\\dist\\index.js"],
"env": {
"TENANT_ID": "tu-tenant-id",
"CLIENT_ID": "tu-client-id",
"CLIENT_SECRET": "tu-client-secret",
"USER_EMAIL": "usuario@tudominio.com"
}
}
}
}
```
Reinicia Claude Desktop y verás las herramientas disponibles.
---
## 🐛 Troubleshooting
**Error 401:** Verifica que el CLIENT_SECRET no haya expirado y que se haya otorgado admin consent.
**Error 403:** Asegúrate de que la app tenga permisos `Files.ReadWrite.All` con admin consent.
**Error 404:** Verifica que el USER_EMAIL sea correcto y tenga OneDrive activo.
TDQS
Scored across 10 tools
Most tools have clearly distinct purposes (list, read, write, delete, etc.). There is minor overlap between get_file (metadata) and read_file (content), and between list_files and search_files, but descriptions sufficiently clarify the boundaries.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., list_files, create_folder, delete_file). This is uniform and predictable across the entire set.
With 10 tools, the server is well-scoped for file management operations. Each tool covers a distinct file or folder action without unnecessary redundancy.
The tool set covers core file operations: listing roots, browsing, reading, writing, creating folders, deleting, moving, copying, and searching. This is comprehensive for a typical file management MCP server.