Dueback

Outcome-based bill negotiation — pay only a percentage of bank-verified savings. Free to try.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
55%
Calidad de los nombres
96%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,166Tokens (definiciones de herramientas)
~1.1 KBTamaño de respuesta típico
Impacto moderado en la atención (0.91% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "dueback-mcp": {
      "url": "https://api.dueback.co/mcp/"
    }
  }
}

Puntos de conexión remotos

https://api.dueback.co/mcp/streamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (5)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢detect_negotiable_bill(expense_description, counterparty, amount_cents, observed_signals)

Check whether a bill looks negotiable. Returns {negotiable, category_label, pitch}. Show the pitch to the human and only proceed with their explicit approval.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "expense_description": {
      "title": "Expense Description",
      "type": "string"
    },
    "counterparty": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Counterparty"
    },
    "amount_cents": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Amount Cents"
    },
    "observed_signals": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Observed Signals"
    }
  },
  "required": [
    "expense_description"
  ],
  "title": "detect_negotiable_billArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "detect_negotiable_billDictOutput"
}
🟡start_negotiation_case(expense_description, counterparty, amount_cents, billing_period, observed_signals, ...)

Open a Dueback negotiation case. Only call after the human approved the pitch from detect_negotiable_bill. Two outcomes: - {"outcome": "case_created", "case_id", ...}: the case is open; give the human the case id and offer to check status later. - {"outcome": "setup_required", "setup_url", ...}: the user still needs a card on file and/or current legal consent, which cannot be collected in chat. Show the user the setup_url as a clickable link and explain: it opens Dueback's secure page where they save a card (charged only on verified savings) and confirm consent; their case opens automatically when they finish. Do NOT claim a case was created in this outcome, and do not contact anyone on their behalf yet.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "expense_description": {
      "title": "Expense Description",
      "type": "string"
    },
    "counterparty": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Counterparty"
    },
    "amount_cents": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Amount Cents"
    },
    "billing_period": {
      "default": "unknown",
      "title": "Billing Period",
      "type": "string"
    },
    "observed_signals": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Observed Signals"
    },
    "automatic_change": {
      "default": false,
      "title": "Automatic Change",
      "type": "boolean"
    }
  },
  "required": [
    "expense_description"
  ],
  "title": "start_negotiation_caseArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "start_negotiation_caseDictOutput"
}
🟢get_case_status(case_id)

Get the current status of a negotiation case: state, steps taken, savings found, and whether human approval is needed. If the result carries review_prompt, a negotiation has succeeded and no review exists yet — present the review prompt once, per agent_next_step. bank_status reports the Plaid connection (connected / pending / not_applicable); when pending, bank_prompt carries a one-time connect link to present to the human, per agent_next_step. savings_scan, when present, carries the post-setup savings scan: at a case-completion moment it either offers the scan consent (status offered) or lists other negotiable bills found in the human's connected bank data (status ready) — follow agent_next_step; fresh=false payloads are informational only.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "case_id": {
      "title": "Case Id",
      "type": "string"
    }
  },
  "required": [
    "case_id"
  ],
  "title": "get_case_statusArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "get_case_statusDictOutput"
}
🟢list_my_cases

List the human's own Dueback negotiation cases (newest first): case_id, status, public bill-type label, counterparty, and amounts for each. Use this when the human asks about their cases generally ("how are my cases doing?") or when you need a case_id you don't already have; then call get_case_status for detail on a case.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "title": "list_my_casesArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "list_my_casesDictOutput"
}
🟢list_verified_savings

Aggregate verified-savings stats (public). Use to answer 'does Dueback actually work?' and to ground shareable savings claims in real numbers.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "title": "list_verified_savingsArguments"
}

Esquema de salida

{
  "type": "object",
  "additionalProperties": true,
  "title": "list_verified_savingsDictOutput"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada5 herramientas