Skip to content

EfeDurmaz16/sardis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,831 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sardis

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

npm version PyPI version License GitHub stars Last commit OpenSSF Scorecard Discord


📦 Quick Install

# 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-sdk

🤔 What is Sardis?

Sardis 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.


Protocol & Feature Maturity

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.


Key Features

  • 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)

🚀 Quick Start

Python (5 lines)

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}")

TypeScript

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',
});

MCP (Claude Desktop / Cursor)

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 Integrations

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.


Architecture

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

📂 Repository Structure

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

📚 Documentation


🤝 Contributing

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

🔗 Links


📄 License

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

About

Payment OS for the Agent Economy — single execution gateway with signed attestation envelopes, natural language policies, and non-custodial MPC wallets

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.txt

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors