snap-langchain-tools
v0.1.0
Published
LangChain tools for SNAP — private agent-to-agent payments on Solana using zero-knowledge proofs
Maintainers
Readme
snap-langchain-tools
LangChain tools for SNAP — private agent-to-agent payments on Solana using zero-knowledge proofs.
Install
npm install snap-langchain-tools @langchain/core @solana/web3.js snap-solana-sdkQuick Start
import { Connection, Keypair } from "@solana/web3.js";
import { createSNAPTools } from "snap-langchain-tools";
const connection = new Connection("https://api.mainnet-beta.solana.com");
const wallet = Keypair.generate();
const tools = createSNAPTools(connection, wallet);
// Returns: [SNAPListPoolsTool, SNAPDepositTool, SNAPWithdrawTool, SNAPEstimateFeeTool]Tools
| Tool | Description |
|------|-------------|
| snap_list_pools | List SNAP mainnet shielded pools |
| snap_deposit | Deposit SOL/USDC into a shielded pool |
| snap_withdraw | Withdraw with a Groth16 ZK proof |
| snap_estimate_fee | Estimate the 0.25% protocol fee |
Usage with LangGraph Agent
import { ChatAnthropic } from "@langchain/anthropic";
import { createReactAgent } from "@langchain/langgraph/prebuilt";
import { createSNAPTools } from "snap-langchain-tools";
const tools = createSNAPTools(connection, wallet);
const agent = createReactAgent({
llm: new ChatAnthropic({ model: "claude-sonnet-4-20250514" }),
tools,
});
const result = await agent.invoke({
messages: [{ role: "user", content: "List the available SNAP pools" }],
});Mainnet Pools
| Pool | Address |
|------|---------|
| 0.1 SOL | B8SyffZKt8LABKogWjH9rZcjY5PV2hyYRCbTxxbcrpFf |
| 1 USDC | 5LeuHrPBgHNhgbCy996MEjcsBk5gNHhVj6AiuuCHZ8od |
| 10 USDC | ECuHf8kgiWfmL3Q6id4WGBQWvuukhzqvF5vsxuPAKZBv |
Links
License
MIT
