mcpField
B
Bankr Agent - Sign & Submit API

Bankr Agent - Sign & Submit API

github.com/bankrbotOther88325 installsUpdated 31w ago
Repository

About Bankr Agent - Sign & Submit API

Bankr Agent - Sign & Submit API provides synchronous endpoints for signing messages, typed data, or transactions and submitting raw transactions. It is intended for workflows that need a signature or transaction hash directly, without polling for an asynchronous job.

Key features

  1. 01Sign messages and typed data
  2. 02Sign transactions without broadcasting
  3. 03Submit raw transactions on-chain
  4. 04Optional confirmation waiting
  5. 05Synchronous signature and transaction responses

Use cases

  1. 01Signing a message to verify wallet ownership
  2. 02Signing EIP-2612 permits
  3. 03Submitting pre-built transaction calldata
  4. 04Running sequential approval and swap transactions

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/bankrbot/claude-plugins --skill bankr-agent---sign-&-submit-api

After installing, type/bankr-agent---sign-&-submit-apiin Claude Code to confirm it loaded.

Details

From the project README

Sign & Submit API

Synchronous endpoints for signing messages and submitting transactions directly — no polling required.

Overview

EndpointPurposeReturns
POST /agent/signSign messages, typed data, or transactionsSignature
POST /agent/submitSubmit raw transactions to chainTransaction hash

Unlike /agent/prompt (async with job polling), these endpoints return immediately.

POST /agent/sign

Sign data without broadcasting to the network.

Signature Types
TypeUse Case
personal_signSign plain text messages (auth, verification)
eth_signTypedData_v4Sign EIP-712 typed data (permits, orders)
eth_signTransactionSign transactions for later broadcast
Prompt Examples

Sign a message:

  • "Sign this message: Hello World"
  • "Sign in to MyApp with nonce abc123"

Sign typed data (EIP-712 permit):

  • "Sign this EIP-712 permit for USDC approval"

Sign a transaction without broadcasting:

  • "Sign this transaction but don't send it"
Success Response
{
  "success": true,
  "signature": "0x...",
  "signer": "0xYourWalletAddress",
  "signatureType": "personal_sign"
}
Common Errors
StatusErrorCause
400Missing required fieldMissing message, typedData, or transaction
401Authentication requiredMissing or invalid API key
403Read-only API keyKey lacks write permissions

POST /agent/submit

Submit raw transactions directly to the blockchain.

Transaction Fields
FieldRequiredDescription
toYesDestination address
chainIdYesChain ID (8453=Base, 1=Ethereum, 137=Polygon)
valueNoValue in wei (as string)
dataNoCalldata (hex string)
gasNoGas limit
waitForConfirmationNoWait for on-chain confirmation (default: true)
Prompt Examples

Submit a raw transaction:

  • "Submit this transaction on Base: {to: 0x..., data: 0x..., value: 0}"

Simple ETH transfer:

  • "Submit a transfer of 1 ETH to 0x..."
Success Response

With confirmation:

{
  "success": true,
  "transactionHash": "0x...",
  "status": "success",
  "blockNumber": "12345678",
  "gasUsed": "21000",
  "signer": "0xYourWalletAddress",
  "chainId": 8453
}
Transaction Status Values
StatusDescription
successConfirmed and succeeded
revertedConfirmed but reverted
pendingSubmitted, not yet confirmed

Use Cases

  • Authentication: Sign messages to verify wallet ownership
  • Gasless approvals: Sign EIP-2612 permits without gas
  • Pre-built transactions: Submit calldata from external tools
  • Multi-step workflows: Execute approve + swap in sequence

Comparison with /agent/prompt

Feature/agent/prompt/agent/sign/agent/submit
InputNatural languageStructured dataTransaction object
ResponseAsync (job ID)Sync (signature)Sync (tx hash)
Executes on-chainVia AI agentNoYes
Best forGeneral queriesAuth, permitsRaw transactions

Security Notes

  • /agent/submit executes immediately with no confirmation prompt
  • Validate all transaction parameters before submission
  • Use waitForConfirmation: true for important transactions
  • Read-only API keys cannot use these endpoints (403)

Comments

Markdown supported