Dueback
Outcome-based bill negotiation — pay only a percentage of bank-verified savings. Free to try.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"dueback-mcp": {
"url": "https://api.dueback.co/mcp/"
}
}
}Remote-Endpunkte
https://api.dueback.co/mcp/streamable-httpWas es kann
Tool-Inventar
Tools (5)
🟢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.
Eingabe-Schema
{
"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"
}Ausgabe-Schema
{
"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.
Eingabe-Schema
{
"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"
}Ausgabe-Schema
{
"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.
Eingabe-Schema
{
"type": "object",
"properties": {
"case_id": {
"title": "Case Id",
"type": "string"
}
},
"required": [
"case_id"
],
"title": "get_case_statusArguments"
}Ausgabe-Schema
{
"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.
Eingabe-Schema
{
"type": "object",
"properties": {},
"title": "list_my_casesArguments"
}Ausgabe-Schema
{
"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.
Eingabe-Schema
{
"type": "object",
"properties": {},
"title": "list_verified_savingsArguments"
}Ausgabe-Schema
{
"type": "object",
"additionalProperties": true,
"title": "list_verified_savingsDictOutput"
}Community
Nachweis