Payment OS for the Agent Economy
AI agents can reason, but they cannot be trusted with money. Sardis is how they earn that trust.
Website Β· Docs Β· Playground Β· Enterprise
# MCP Server (Claude, Cursor, ChatGPT)
npx @sardis/mcp-server start
# Python SDK
pip install sardis
# TypeScript SDK
npm install @sardis/sdk
# LangChain
pip install sardis # Uses sardis-sdk under the hood
# CrewAI
pip install sardis # Compatible with CrewAI tools
# OpenAI Functions
pip install sardis # Use with OpenAI function calling
# Gemini / ADK
pip install sardis # Compatible with Google AI SDKs
# Vercel AI SDK
npm install @sardis/ai-sdkSardis gives AI agents non-custodial MPC wallets with natural language spending policies. It prevents financial hallucinationsβagents accidentally spending $10k instead of $100βwith a real-time policy firewall that validates every transaction before execution.
Your Claude agent, LangChain workflow, or autonomous bot gets its own wallet with programmable guardrails: "Max $100/day on cloud services, only approved vendors, no gambling." The agent cannot override these policies.
Sardis executes stablecoin payments (USDC) on Base with multi-chain funding via CCTP v2 (Ethereum, Polygon, Arbitrum, Optimism). Virtual cards are available in pilot via Stripe Issuing.
| Feature | Status | Description |
|---|---|---|
| Spending Policy Engine | Production | Deterministic NL-to-policy, atomic spend tracking |
| AP2 Mandate Verification | Production | Full mandate chain verification with evidence |
| USDC Payments (Base) | Production | Non-custodial MPC wallet execution |
| Policy Attestation API | Production | Signed attestation envelopes with Ed25519 |
| PreExecutionPipeline | Production | Composable hook chain with fail-closed defaults |
| Hosted Checkout | Pilot | Merchant checkout flows with session security |
| ERC-8183 Agentic Jobs | Pilot | On-chain job escrow (conservative caps: 1% fee, USDC-only) |
| x402 Protocol | Pilot | HTTP-native micropayments |
| Virtual Cards (Stripe Issuing) | Pilot | Agent-controlled virtual card issuance |
| Multi-chain (Polygon, Arbitrum) | Experimental | Chain routing implemented, not production-tested |
| UCP MCP Transport | Experimental | Partial implementation |
| FIDES Trust Graph | Experimental | DID-based trust federation |
Status key: Production = deployed, tested, load-bearing. Pilot = functional with design partners, conservative limits. Experimental = code exists, not production-tested.
- Non-custodial MPC wallets -- Turnkey integration, zero private key exposure
- Natural language spending policies -- "Max $50/tx, $200/day, SaaS vendors only"
- Financial hallucination prevention -- Policy firewall blocks invalid transactions
- 9 AI framework integrations -- MCP, LangChain, OpenAI, Vercel AI, CrewAI, LlamaIndex, Mastra
- Virtual cards (Pilot) -- Stripe Issuing for agent-controlled fiat payments
- Agent-to-agent escrow -- Cryptographic mandate chain for A2A payments
- KYA (Know Your Agent) -- Trust scoring and behavioral anomaly detection
- Base (production) + 4 funding chains -- Multi-chain funding via CCTP v2
- Double-entry audit ledger -- Append-only transaction history with cryptographic proofs
- Protocol support -- AP2 and TAP (production), x402 (pilot), UCP and A2A (partial)
from sardis import Sardis
sardis = Sardis(api_key="sk_...")
result = sardis.payments.create(
agent_id="agent_abc",
amount="50.00",
token="USDC",
recipient="merchant@example.com"
)
print(f"Payment: {result.tx_hash}")import { SardisClient } from '@sardis/sdk';
const client = new SardisClient({ apiKey: 'sk_...' });
const agent = await client.agents.create({ name: 'my-agent' });
const wallet = await client.wallets.create({
agent_id: agent.agent_id,
currency: 'USDC',
limit_per_tx: '100.00',
});
const tx = await client.wallets.transfer(wallet.wallet_id, {
destination: '0x...',
amount: '25.00',
token: 'USDC',
chain: 'base_sepolia',
domain: 'openai.com',
});Add to your claude_desktop_config.json:
{
"mcpServers": {
"sardis": {
"command": "npx",
"args": ["@sardis/mcp-server", "start"]
}
}
}That's it. Your agent now has a wallet with spending limits.
| Framework | Package | Install |
|---|---|---|
| MCP (Claude, Cursor, ChatGPT) | @sardis/mcp-server |
npx @sardis/mcp-server start |
| LangChain | sardis |
pip install sardis |
| CrewAI | sardis |
pip install sardis |
| OpenAI Functions | sardis |
pip install sardis |
| Gemini / ADK | sardis |
pip install sardis |
| Vercel AI SDK | @sardis/ai-sdk |
npm install @sardis/ai-sdk |
| Claude Agent SDK | sardis |
pip install sardis |
| LlamaIndex | sardis |
pip install sardis |
| Mastra | @sardis/sdk |
npm install @sardis/sdk |
All frameworks use the same policy engine and MPC wallet infrastructure.
Every payment follows a single execution path through the PaymentOrchestrator. There are no alternative code paths that bypass policy checks.
AI AGENT
(Claude, Cursor, LangChain, OpenAI)
|
MCP / SDK
|
βββββββββββββββ΄ββββββββββββββ
β PaymentOrchestrator β
β (single entry point) β
βββββββββββββββ¬ββββββββββββββ
|
βββββββββββββββ΄ββββββββββββββ
β PreExecutionPipeline β
β β
β Composable hooks: β
β - Policy evaluation β
β - Spend tracking β
β - Dedup check β
β - Compliance gate β
β - KYA trust scoring β
β β
β Fail-closed: any hook β
β failure blocks the tx β
βββββββββββββββ¬ββββββββββββββ
|
βββββββββββββββ΄ββββββββββββββ
β MPC SIGNING (Turnkey) β
β Non-custodial keys β
βββββββββββββββ¬ββββββββββββββ
|
+βββββββββββ΄ββββββββββ+
| |
On-Chain Rails Fiat Rails
USDC on Base Virtual Cards
(+ CCTP v2 funding) (Stripe Issuing)
| |
βββββββ΄ββββββ ββββββ΄βββββ
β LEDGER β β LEDGER β
β Append β β Append β
β Only β β Only β
βββββββββββββ βββββββββββ
Key design principles:
- Fail-closed -- Default deny on all policy, compliance, and security checks
- Non-custodial -- Private keys never stored; MPC signing via Turnkey
- Audit everything -- Append-only ledger with signed attestation envelopes for every decision
sardis/
βββ packages/ # Core monorepo packages
β βββ sardis-core/ # Domain models, config, database
β βββ sardis-api/ # FastAPI REST endpoints
β βββ sardis-chain/ # Blockchain execution, chain routing
β βββ sardis-protocol/ # AP2/TAP protocol verification
β βββ sardis-wallet/ # Wallet management, MPC
β βββ sardis-ledger/ # Append-only audit trail
β βββ sardis-compliance/ # KYC (iDenfy) + AML (Elliptic)
β βββ sardis-cards/ # Virtual cards (Stripe Issuing)
β βββ sardis-mcp-server/ # MCP server for Claude/Cursor
β βββ sardis-sdk-python/ # Full Python SDK
β βββ sardis-sdk-js/ # TypeScript SDK
β βββ sardis-cli/ # Command-line tool
β βββ sardis-checkout/ # Merchant checkout flows
βββ sardis/ # Simple Python SDK (public interface)
βββ contracts/ # Solidity smart contracts
β βββ src/
β βββ SardisWalletFactory.sol
β βββ SardisAgentWallet.sol
β βββ SardisEscrow.sol
βββ dashboard/ # React admin dashboard
βββ landing/ # Marketing website
βββ mobile/ # React Native companion app
βββ playground/ # Interactive demo sandbox
βββ examples/ # Usage examples
βββ demos/ # Demo applications
βββ docs/ # Documentation
β βββ marketing/ # GTM content and strategies
βββ tests/ # Integration tests
- Getting Started Guide β First payment in 5 minutes
- API Reference β Complete endpoint documentation
- MCP Server Setup β Claude Desktop integration
- Policy Language β Write spending rules in plain English
- Chain Support β Supported networks and tokens
- Framework Guides β LangChain, OpenAI, Vercel AI SDK
- Security Model β MPC architecture and threat model
- Compliance β KYC/AML/SAR framework
- Examples β Code samples for all frameworks
We welcome contributions! Please see our Contributing Guide for details.
Quick contribution checklist:
- Fork the repository
- Create a feature branch:
git checkout -b feature/your-feature - Make your changes with tests
- Run the test suite:
uv run pytest tests/ - Submit a pull request
Development setup:
# Clone the repository
git clone https://github.com/EfeDurmaz16/sardis.git
cd sardis
# Install dependencies
uv sync
# Run tests
uv run pytest tests/
# Start local API server
uvicorn sardis_api.main:create_app --factory --port 8000- Website: sardis.sh
- Documentation: sardis.sh/docs
- Playground: sardis.sh/playground
- GitHub: github.com/EfeDurmaz16/sardis
- Discord: discord.gg/XMA9JwDJ
- PyPI: pypi.org/project/sardis
- npm: npmjs.com/package/@sardis/mcp-server
- Context7 Docs: context7.com/efedurmaz16/sardis
This project uses an open-core licensing model:
-
MIT License β SDKs, MCP Server, Integration Adapters, CLI tools
-
sardis(Python meta-package) -
@sardis/sdk,@sardis/mcp-server,@sardis/ai-sdk - All integration adapters and examples
-
-
Proprietary β Core banking infrastructure, policy engine internals, MPC node management
See LICENSE.txt for full details.
Sardis β The Payment OS for the Agent Economy
Non-Custodial | MCP Native | Financial Hallucination Prevention
Built with β€οΈ for the AI agent ecosystem
Β© 2026 Efe Baran Durmaz