Address Validator
Idioma: ES
Crear cuenta

AGENTES DE IAMCP y x402

La validación de direcciones que tu agente de IA puede pagar solo.

Una herramienta MCP, validate_address, y pago por llamada con x402: tu agente descubre el servicio gratis, paga 0,02 USDC por validación en la red Base y recibe la dirección normalizada. Sin cuenta, sin clave de API, sin intervención humana.

  • MCP 2025-06-18
  • x402 v1 · v2
  • 0,02 USDC / llamada
  • USDC · Base

En tres llamadas

El mismo servicio que por HTTP, conectado al protocolo que tu agente ya habla.

  1. Descubrir, gratis

    La tarjeta /.well-known/mcp-server describe el servidor. initialize y luego tools/list en /mcp no cuestan nada.

  2. Recibir la oferta

    Un tools/call sin pago devuelve un resultado de herramienta en error (isError) cuyo contenido es la oferta exacta en x402 v2: red, token USDC, importe (20000 unidades, es decir 0,02 USDC), destino.

  3. Pagar y recibir

    El agente firma la autorización (EIP-3009) y repite la llamada con el pago en params._meta["x402/payment"] (o la cabecera X-PAYMENT de un cliente v1). El resultado llega tras la liquidación, con su recibo.

Configuración de un cliente MCP

{
  "mcpServers": {
    "address-validator": { "url": "https://kder-ai.com/mcp" }
  }
}

La llamada a la herramienta

POST https://kder-ai.com/mcp
{
  "jsonrpc": "2.0", "id": 1, "method": "tools/call",
  "params": {
    "name": "validate_address",
    "arguments": { "address": {
      "street": "1600 Amphitheatre Parkway", "city": "Mountain View",
      "state": "CA", "zip": "94043", "country": "US" } }
  }
}

La oferta leída en el resultado de la herramienta

"accepts": [{
  "scheme": "exact", "network": "eip155:8453",
  "amount": "20000",
  "asset": "USDC", "payTo": "0x…"
}]

Pagar desde su código

Las bibliotecas oficiales de x402 leen la oferta, firman y pagan solas, tanto en x402 v1 como en v2. Fije un límite de gasto y llame a la API como a cualquier otra.

Python · x402 + httpx

# pip install "x402[httpx,evm]"
import asyncio, os
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

async def main():
    client = x402Client().set_spend_controls({"max_amount_per_payment": "$0.05"})
    signer = EthAccountSigner(Account.from_key(os.environ["EVM_PRIVATE_KEY"]))
    register_exact_evm_client(client, signer)
    async with x402HttpxClient(client) as http:
        response = await http.post("https://kder-ai.com/validate", json={"address": {
            "street": "1600 Amphitheatre Parkway", "city": "Mountain View",
            "state": "CA", "zip": "94043", "country": "US"}})
        await response.aread()
        print(response.status_code, response.json())

asyncio.run(main())

JavaScript · @x402/fetch

// npm install @x402/fetch @x402/evm viem, then run as an ES module (pay.mjs)
import { x402Client, wrapFetchWithPayment } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
client.setSpendControls({ maxAmountPerPayment: "$0.05" });
client.register("eip155:*", new ExactEvmScheme(privateKeyToAccount(process.env.EVM_PRIVATE_KEY)));

const pay = wrapFetchWithPayment(fetch, client);
const response = await pay("https://kder-ai.com/validate", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ address: {
    street: "1600 Amphitheatre Parkway", city: "Mountain View",
    state: "CA", zip: "94043", country: "US" } }),
});
console.log(response.status, await response.json());

Lo que recibe el agente

Una respuesta JSON, siempre con la misma forma.

  • validatedsi la dirección se reconoce o no
  • standardizedline1, line2, city, state, zip, country
  • latitude · longitudelas coordenadas GPS de la dirección
  • deliverabilityresidential, commercial…
  • confidenceun índice de confianza de 0 a 1
  • degradedverdadero: el proveedor no respondió, reintenta

Por qué x402 para un agente

Sin cuenta que crear, sin clave que guardar, sin suscripción: el agente paga exactamente lo que consume, cuando lo consume. Una autorización ya usada se rechaza: el mismo pago nunca cuenta dos veces.

Conviene saber

  • Estados Unidos se verifica con USPS (DPV); Francia y ultramar, con la Base Adresse Nationale; en otros lugares, la verificación sigue siendo parcial.
  • degraded verdadero significa que el proveedor no respondió: no es una dirección errónea, repite la llamada más tarde.
  • No más de 10 peticiones por segundo y por dirección IP.
  • La dirección no se guarda en los registros; el resultado queda 30 días en caché para responder más rápido.
  • Una tienda sin monedero usa el mismo servicio con una clave de API y una suscripción.

Preguntas frecuentes

¿Mi agente necesita una cuenta?

No. El pago x402 basta: sin registro, sin clave de API.

¿Qué monedero hace falta?

Un monedero con USDC en la red Base capaz de firmar una autorización EIP-3009, como los que ofrecen las bibliotecas x402.

¿Cuánto cuesta el descubrimiento?

Nada. initialize, tools/list y la tarjeta de descubrimiento son gratuitos; solo tools/call es de pago, 0,02 USDC.

¿Y si el proveedor no responde?

El resultado lleva degraded: true y una confianza baja. No bloquees el pedido: repite la llamada un poco más tarde.

Guía de integración Precios Comparativa de precios