Pay gas in USDC.
Zero native tokens.
The agent-native ERC-4337 paymaster and bundler for Taiko. Your agents pay gas in USDC — no ETH, no bridging, no setup.
Three steps. That's it.
No ETH bridging. No token wrapping. No gas management headaches.
Get a USDC quote
Call our paymaster endpoint with your UserOperation. We return the exact USDC cost including gas estimate — no surprises.
Sign a USDC permit
Approve the USDC spend with an EIP-2612 off-chain signature. No on-chain approval transaction needed — zero ETH required at any point.
Submit & done
Send the UserOperation through our bundler. We handle gas payment, bundling, and on-chain execution. Your agent moves on.
One endpoint.
Give it to your agent.
Tell your AI agent to use this URL as its paymaster when transacting on Taiko. It only needs standard viem + ERC-7677 JSON-RPC. Fresh accounts fund the counterfactual address with USDC, then deploy and transact in one sponsored UserOp. ERC-7677, no SDK needed.
https://servo.taiko.xyz/rpcAll paymaster and bundler methods in one place. Your agent only needs USDC — no ETH at any point.
If you want the details
Under the hood it's standard ERC-7677 JSON-RPC. The cold-start path is: stub quote, prepend `permit()` if allowance is missing, quote the final UserOp, submit. Here's the viem flow.
import { createClient, encodeFunctionData, http, maxUint256, parseAbi } from "viem";
import { taikoAlethia } from "viem/chains";
const client = createClient({
chain: taikoAlethia,
transport: http("https://servo.taiko.xyz/rpc"),
});
const accountAbi = parseAbi([
"function execute(address,uint256,bytes)",
"function executeBatch(address[] targets, uint256[] values, bytes[] calldatas)",
]);
const usdcAbi = parseAbi([
"function allowance(address owner, address spender) view returns (uint256)",
"function nonces(address owner) view returns (uint256)",
"function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s)",
]);
const action = encodeFunctionData({
abi: targetAbi,
functionName: "doThing",
args: [123n],
});
let userOp = {
sender,
nonce: "0x0",
initCode,
callData: encodeFunctionData({
abi: accountAbi,
functionName: "execute",
args: [target, 0n, action],
}),
callGasLimit: "0x0",
verificationGasLimit: "0x0",
preVerificationGas: "0x0",
maxFeePerGas,
maxPriorityFeePerGas,
signature: DUMMY_SIG,
};
// 1. Stub quote for the real action. This reveals the paymaster + token + maxTokenCost.
const stub = await client.request({
method: "pm_getPaymasterStubData",
params: [userOp, entryPoint, "taikoMainnet"],
});
// 2. If the undeployed account has no allowance yet, prepend permit() in the same UserOp.
const allowance = await publicClient.readContract({
address: stub.tokenAddress,
abi: usdcAbi,
functionName: "allowance",
args: [sender, stub.paymaster],
});
if (allowance < BigInt(stub.maxTokenCostMicros)) {
const permit = await signPermitWithViem({
owner,
token: stub.tokenAddress,
spender: stub.paymaster,
value: maxUint256,
nonce: await publicClient.readContract({
address: stub.tokenAddress,
abi: usdcAbi,
functionName: "nonces",
args: [sender],
}),
});
userOp = {
...userOp,
callData: encodeFunctionData({
abi: accountAbi,
functionName: "executeBatch",
args: [
[stub.tokenAddress, target],
[0n, 0n],
[permit.calldata, action],
],
}),
};
}
// 3. Final quote for the exact UserOp you will submit.
const quote = await client.request({
method: "pm_getPaymasterData",
params: [userOp, entryPoint, "taikoMainnet"],
});
// 4. Sign the final UserOp hash and send it.
await bundlerClient.sendUserOperation({
...userOp,
...quote,
});Simple, transparent pricing
Pay per operation. No subscriptions. No signup required.
Every UserOp is priced in USDC and settled on-chain. No invoices, no billing cycles, no API keys.
- Unlimited UserOps
- Bundler + paymaster included
- Settled on-chain in USDC
- No signup or API keys
- No invoices or billing
The only option on Taiko
No other paymaster or bundler supports Taiko Alethia. And we're cheaper than the competition on other chains.
| Servo | Pimlico | Circle | Alchemy | |
|---|---|---|---|---|
| Taiko support | ||||
| USDC gas payment | ||||
| Bundler | ||||
| Paymaster | ||||
| Permit flow (no ETH) | ||||
| Effective rate | 5% | ~15.5% | 10% | 8% + per-op |
Ready to build on Taiko?
Point your agent at the endpoint and let it transact with USDC. No signup, no API keys — just go.