An MCP (Model Context Protocol) server implementation for interacting with Safe (formerly Gnosis Safe) smart contract wallets.
- Query Safe transactions for any Safe address
- Get multisig transaction details
- Decode transaction data
- Safe API integration
npm installnpm run build
npm startNo configuration is required - the server uses the Safe Transaction API mainnet endpoint by default.
Get all transactions for any Safe address. The Safe address is determined by the LLM at runtime based on the context of the conversation.
// Example tool call
getSafeTransactions({
address: "0x123...", // Safe address determined by LLM
limit: 100, // optional
offset: 0, // optional
});Get details of a specific multisig transaction.
getMultisigTransaction({
safeTxHash: "0x456...", // Transaction hash to query
});Decode transaction data using Safe API.
decodeTransactionData({
data: "0x789...", // Transaction data to decode
to: "0xabc...", // Optional contract address
});By default, the server uses the Safe Transaction API mainnet endpoint:
https://safe-transaction-mainnet.safe.global/api/v1
If you need to use a different endpoint (e.g., for testnet), you can set it via environment variable:
SAFE_API_URL=https://safe-transaction-goerli.safe.global/api/v1 npm startnpm run devMIT