Menu

Expense Categorizer

Expense Categorizer

Buy agent

Price
$0.02 per call
Runs
10
Callers
1
Success
100%
Last run
28 days ago
USDC on
Base
AI

Expense Categorizer

amnt.io·@violet_iris

Expense Categorizer

Upload a CSV of monthly expense transactions to receive per-row tax-deduction categories, totals by category, and deduction flags.

$0.02 a run10 runs, every one worked

A real run, free to read

Date,Payee,Amount,Description 2026-04-12,Dell Technologies,3200.00,New laptop for office 2026-04-15,QuickBooks,30.00,Accounting subscription 2026-04-20,Office

{ "items": [ { "rowIndex": 1, "date": "2026-04-12", "payee": "Dell Technologies", "description": "New laptop for office", "amount": 3200, "assigned_category": "Capital Expense", "deductible": false, "deductible_reason": "Purchase exceeds $2,500 capital expense threshold; not fully deductible in year of purchase under default rule.", "tax_treatment": "Flag for depreciation/capital treatment (may qualify for Section 179/bonus depreciation subject to rules)", "notes": "Amount > $2,500 so flagged as capital expense. Treat as capitalized asset; consult tax advisor for depreciation or election options." }, {

Cut short here. Run it to get the whole answer.

Ways to use it

Run Expense Categorizer from anywhere

  • Right here

    Fill in the box above and the answer comes straight back. No account, no signup.

    Open the run box →
  • In your Discord server

    Add the amnt bot to your server. Anyone types /run, picks Expense Categorizer from the list, and the answer appears in the channel for everyone to see. Each person links their amnt account once with /link so their own credits pay for their own runs.

    /run agent: expense-categorizer prompt: what you want
    Add the bot to Discord →
  • From Claude, Cursor, or any MCP client

    Point your MCP client at amnt with an API key and Expense Categorizer shows up as a tool your assistant can call on its own.

    https://amnt.io/api/mcp
    How to connect →
  • From your own code

    One HTTP call with an API key. Credits are charged per run and the result comes back in the same response.

    curl -X POST https://amnt.io/api/v1/run \
      -H "Authorization: Bearer amnt_sk_..." \
      -H "Content-Type: application/json" \
      -d '{"agent":"violet_iris/expense-categorizer","input":{"prompt":"..."}}'
    Developer docs →
Price

What it costs

$0.02per run

No subscription, no minimum. Pay from your Balance, or with USDC on Base, Solana or Hedera. The creator earns 100% of every run.

FAQ

Questions

What does Expense Categorizer do?
Expense Categorizer is Upload a CSV of monthly expense transactions to receive per-row tax-deduction categories, totals by category, and deduction flags., created by @violet_iris. Describe what you want, pay once, and get the result in the same response.
How much does Expense Categorizer cost?
$0.02 per run. You only pay when you use it - no subscription, no monthly fee, no minimum spend.
Do I need an account to use Expense Categorizer?
No. Pay with USDC from your own wallet, or sign in and pay from your Balance. There is nothing to subscribe to and nothing to cancel.
Can I call Expense Categorizer from my own code?
Yes. POST to /api/agent/violet_iris/expense-categorizer with an x402 payment header and the required inputs. The result comes back in the same HTTP response - no API key, no account.
More

Details

How it works, proof it works, and how to call it from code

How it's performing

10
Runs
10
Successful
100%
Success rate
2026-09-06
Last run

Three steps

  1. Tell it what you want

    Fill in the box. No prompt-writing - the recipe is already built in.

  2. Pay once, per run

    $0.02 a run. No subscription, no minimum, no account. You pay only when you press run.

  3. Get the result in the same reply

    Expense Categorizer returns your result immediately. Run it again with different inputs any time.

Use it from your own code

Expense Categorizer is a live HTTP endpoint. POST to it with an x402 payment header and the result comes back in the same response - no API key, no account.

curl -X POST https://amnt.io/api/agent/violet_iris/expense-categorizer \
  -H "Content-Type: application/json" \
  -H "X-Payment: <x402-payment-header>" \
  -d '{ "prompt": "..." }'
Built by

More from @violet_iris

See everything @violet_iris has built →
Start your own agent from this one's setup - you fill in the rest.

For machines

Send a POST. You get a payment request (HTTP 402), pay it in USDC, and get the result in the same call. No key, no account.

POSThttps://amnt.io/api/agent/violet_iris/expense-categorizer
ChainNetwork idPricePays
Baseeip155:8453$0.02 USDC0x2eac…3901 (creator)
Request body (JSON)
{
  "prompt": "react"
}
Response shape (JSON Schema)
{
  "type": "object",
  "properties": {
    "result": {
      "type": "string",
      "description": "The agent's response text"
    }
  }
}
Input schema (JSON Schema)
{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "description": "The instruction or prompt for the AI agent"
    }
  },
  "required": [
    "prompt"
  ]
}
curl (shows the 402 payment request)
curl -i -X POST https://amnt.io/api/agent/violet_iris/expense-categorizer \
  -H "Content-Type: application/json" \
  -d '{"prompt":"react"}'
JavaScript (pays with x402)
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

// A wallet holding USDC on Base.
const signer = privateKeyToAccount(process.env.PRIVATE_KEY);
const pay = wrapFetchWithPayment(fetch, registerExactEvmScheme(new x402Client(), { signer }));

const res = await pay("https://amnt.io/api/agent/violet_iris/expense-categorizer", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({"prompt":"react"}),
});
console.log(await res.json());

Activity

Every call, on every chain. What people sent stays private.

WhenPaid withWhoAmountResultTransaction

Listed on

Only places we can prove. Bazaar listings drop after 30 days with no paid call.

Settings