# Reflejar mensaje

> Devuelve el texto recibido junto con su longitud.



{/* AUTO-GENERATED by @emisso/codegen. DO NOT EDIT. */}

|                     |                                                                    |
| ------------------- | ------------------------------------------------------------------ |
| **Tool ID**         | `echo.message.reflect`                                             |
| **Nombre MCP**      | `echo__message__reflect`                                           |
| **Conector**        | `echo`                                                             |
| **Plano**           | `action`                                                           |
| **Scope (permiso)** | `echo:read`                                                        |
| **Auth**            | `none`                                                             |
| **Versión**         | `1`                                                                |
| **Sensible**        | no                                                                 |
| **Deprecado**       | no                                                                 |
| **Comportamiento**  | readOnly=true, destructive=false, idempotent=true, openWorld=false |

## Qué hace [#qué-hace]

Conector de ejemplo que prueba que el patrón del registry generaliza; no requiere credenciales.

## Entrada [#entrada]

| Campo  | Tipo   | Requerido | Descripción      |
| ------ | ------ | --------- | ---------------- |
| `text` | string | sí        | Texto a reflejar |

<details>
  <summary>
    JSON Schema de entrada
  </summary>

  ```json
  {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "text": {
        "type": "string",
        "description": "Texto a reflejar"
      }
    },
    "required": [
      "text"
    ]
  }
  ```
</details>

## Ejemplo [#ejemplo]

```bash title="curl"
curl -X POST https://connect.emisso.ai/api/v1/tools/echo.message.reflect/execute \
  -H "Authorization: Bearer connect_sk_…" \
  -H "Content-Type: application/json" \
  -d '{"input":{"text":"hola connect"}}'
```

```ts title="SDK TypeScript"
const data = await connect.tools.echo.message.reflect({ text: "hola connect" });
```

```json title="MCP · meta-tool execute"
{
  "tool": "echo.message.reflect",
  "params": {
    "text": "hola connect"
  }
}
```

**Salida esperada (200):**

```json
{
  "data": {
    "text": "hola connect",
    "length": 12
  },
  "meta": {
    "request_id": "req_…",
    "tool_id": "echo.message.reflect",
    "plane": "action",
    "latency_ms": 24,
    "audit_status": "recorded"
  }
}
```

## Salida [#salida]

| Campo    | Tipo   | Requerido | Descripción                               |
| -------- | ------ | --------- | ----------------------------------------- |
| `text`   | string | sí        | El mismo texto que mandaste, sin cambios. |
| `length` | entero | sí        | Cuántos caracteres tiene ese texto.       |

<details>
  <summary>
    JSON Schema de salida
  </summary>

  ```json
  {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "text": {
        "type": "string",
        "description": "El mismo texto que mandaste, sin cambios."
      },
      "length": {
        "type": "integer",
        "minimum": -9007199254740991,
        "maximum": 9007199254740991,
        "description": "Cuántos caracteres tiene ese texto."
      }
    },
    "required": [
      "text",
      "length"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Errores de esta tool [#errores-de-esta-tool]

Toda llamada puede devolver además los códigos transversales (`validation_error`, `unauthorized`, `scope_not_granted`, `rate_limited`, entre otros): el detalle vive en el [catálogo de errores](../errores).
