---
title: "Desarrolladores - Carlos Garavito"
description: "API JSON pública de solo lectura, documento OpenAPI y servidor MCP remoto para el contenido de cgaravito.dev: publicaciones, proyectos y perfil."
canonical_url: "https://cgaravito.dev/es/developers"
last_updated: "2026-09-10T00:00:00.000Z"
locale: "es"
---

# Desarrolladores

Todo el contenido de este sitio está disponible para programas: una API JSON de solo lectura en /api/v1, un documento OpenAPI 3.1 y un servidor MCP remoto que expone los mismos datos como tools y resources. Sin API key ni registro.

- OpenAPI: https://cgaravito.dev/openapi.json
- MCP: https://cgaravito.dev/mcp

## Endpoints

| Método | Ruta | Resumen | Parámetros |
| --- | --- | --- | --- |
| GET | `/api/v1/health` | Estado de la API | - |
| GET | `/api/v1/posts` | Listar publicaciones | locale, limit, cursor |
| GET | `/api/v1/posts/{locale}/{slug}` | Leer una publicación con su contenido en Markdown | locale, slug |
| GET | `/api/v1/projects` | Listar proyectos | locale |
| GET | `/api/v1/profile` | Leer el perfil | locale |

## Ejemplos

```bash
curl "https://cgaravito.dev/api/v1/posts?locale=es&limit=5"
```

```bash
curl https://cgaravito.dev/api/v1/posts/es/{slug}
```

```bash
curl https://cgaravito.dev/openapi.json
```

## Servidor MCP

El servidor MCP se ejecuta en /mcp mediante Streamable HTTP, sin estado y sin autenticación. Expone las herramientas list_posts, get_post, list_projects y get_profile, además de los recursos cgaravito://llms.txt, cgaravito://profile/{locale} y cgaravito://posts/{locale}/{slug}.

**Claude Code**

```bash
claude mcp add --transport http cgaravito-dev https://cgaravito.dev/mcp
```

**Codex**

```bash
codex mcp add cgaravito-dev --url https://cgaravito.dev/mcp
```

**mcp.json**

```json
{
  "mcpServers": {
    "cgaravito-dev": {
      "type": "http",
      "url": "https://cgaravito.dev/mcp"
    }
  }
}
```

## Sandbox

Todos los endpoints son de solo lectura y no existe ninguna superficie de escritura, por lo que es seguro llamarlos desde producción. No hay un sandbox independiente porque nada se puede modificar.

## Errores y límites

Los errores son documentos de problema RFC 9457 con una URI de tipo bajo https://cgaravito.dev/api/errors/. El rate limiting es orientativo: cada respuesta incluye las cabeceras X-RateLimit-Limit y X-RateLimit-Remaining, junto con los campos RateLimit-Policy y RateLimit del borrador draft-ietf-httpapi-ratelimit-headers.

## Versionado y obsolescencia

La política de obsolescencia de esta API es la siguiente: el prefijo de ruta /api/v1 es estable y los cambios incompatibles se entregan bajo un nuevo prefijo. Cuando un prefijo queda obsoleto sigue respondiendo durante al menos 90 días, y la API anuncia la fecha de retirada con las cabeceras Deprecation (RFC 9745) y Sunset (RFC 8594).

[Lee la política completa](https://cgaravito.dev/es/developers/versioning)
