blueprint-infrastructure avatar

Blueprint Agentic Staking (Solentic)

blueprint-infrastructure/solentic-mcp

Wraps the Blueprint REST API to give AI agents native Solana staking operations. You get 26 tools split into one-shot actions (stake, unstake, withdraw) that handle build-sign-submit in a single call by forwarding your secret key over HTTPS for in-memory signing, plus advanced tools that return unsigned transactions if you want to sign locally. Also includes portfolio reads (balances, stake accounts, APY), validator metrics, webhook registration for state changes, and verification tools to audit the deployed source. Runs as stdio or connects to their hosted MCP endpoint. Useful if you're building agents that need to manage SOL staking positions without managing raw transaction construction.

tools
29
transport
STDIO, HTTP
last updated
Apr 2, 2026

Install

From registry metadata
$ npx add-mcp https://solentic.theblueprint.xyz/mcp --name solentic

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http solentic https://solentic.theblueprint.xyz/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 29 tools

Verified live against the running server on Nov 6, 2026.

stakeStake SOL with Blueprint validator in a single call. Builds the transaction, signs it with your secret key in-memory, and submits to Solana. Returns the confirmed transaction signature. Your secret key is used only for signing and is never stored, logged, or forwarded — verify...3 params

Stake SOL with Blueprint validator in a single call. Builds the transaction, signs it with your secret key in-memory, and submits to Solana. Returns the confirmed transaction signature. Your secret key is used only for signing and is never stored, logged, or forwarded — verify...

Parameters* required
amountSol*number
Amount of SOL to stake
secretKey*string
Your base58-encoded secret key — used in-memory for signing only, never stored
walletAddress*string
Your Solana wallet address (base58 public key)
unstakeDeactivate a stake account in a single call. Builds the transaction, signs it, and submits it. The stake enters a cooldown period (~1 epoch) and becomes withdrawable at the next epoch boundary. Use check_withdraw_ready to poll readiness, then withdraw to reclaim SOL. This is t...3 params

Deactivate a stake account in a single call. Builds the transaction, signs it, and submits it. The stake enters a cooldown period (~1 epoch) and becomes withdrawable at the next epoch boundary. Use check_withdraw_ready to poll readiness, then withdraw to reclaim SOL. This is t...

Parameters* required
secretKey*string
Your base58-encoded secret key — used in-memory for signing only, never stored
stakeAccountAddress*string
Stake account address to deactivate
walletAddress*string
Your Solana wallet address (stake authority)
withdrawWithdraw SOL from a deactivated stake account in a single call. Builds the transaction, signs it, and submits it. Funds are returned to your wallet. Use check_withdraw_ready first to confirm the account is ready. Omit amountSol to withdraw the full balance. This is the recomme...4 params

Withdraw SOL from a deactivated stake account in a single call. Builds the transaction, signs it, and submits it. Funds are returned to your wallet. Use check_withdraw_ready first to confirm the account is ready. Omit amountSol to withdraw the full balance. This is the recomme...

Parameters* required
amountSolvalue
Amount to withdraw in SOL (omit to withdraw full balance)
secretKey*string
Your base58-encoded secret key — used in-memory for signing only, never stored
stakeAccountAddress*string
Deactivated stake account to withdraw from
walletAddress*string
Your Solana wallet address (withdraw authority)
get_validator_infoGet Blueprint validator profile: identity, vote account, commission, active stake, APY, performance, software, location. Live data from StakeWiz API.

Get Blueprint validator profile: identity, vote account, commission, active stake, APY, performance, software, location. Live data from StakeWiz API.

No parameters. Call it with no arguments.

get_staking_apyGet live APY breakdown: base staking APY + Jito MEV APY = total APY. Includes commission rates. Data from StakeWiz API.

Get live APY breakdown: base staking APY + Jito MEV APY = total APY. Includes commission rates. Data from StakeWiz API.

No parameters. Call it with no arguments.

get_performance_metricsGet Blueprint validator performance: vote success rate, uptime, skip rate, epoch credits, delinquency status.

Get Blueprint validator performance: vote success rate, uptime, skip rate, epoch credits, delinquency status.

No parameters. Call it with no arguments.

create_stake_transactionAdvanced: Build an unsigned stake transaction for local signing. Most agents should use the `stake` tool instead, which handles signing and submission automatically. This tool is for agents that manage their own signing infrastructure.2 params

Advanced: Build an unsigned stake transaction for local signing. Most agents should use the `stake` tool instead, which handles signing and submission automatically. This tool is for agents that manage their own signing infrastructure.

Parameters* required
amountSol*number
Amount of SOL to stake (minimum 0.00228288 SOL for rent exemption)
walletAddress*string
Solana wallet address (base58 public key) that will fund and control the stake
create_unstake_transactionAdvanced: Build an unsigned unstake transaction for local signing. Most agents should use the `unstake` tool instead, which handles signing and submission automatically.2 params

Advanced: Build an unsigned unstake transaction for local signing. Most agents should use the `unstake` tool instead, which handles signing and submission automatically.

Parameters* required
stakeAccountAddress*string
Stake account address to deactivate
walletAddress*string
Wallet address that is the stake authority
withdraw_stakeAdvanced: Build an unsigned withdraw transaction for local signing. Most agents should use the `withdraw` tool instead, which handles signing and submission automatically.3 params

Advanced: Build an unsigned withdraw transaction for local signing. Most agents should use the `withdraw` tool instead, which handles signing and submission automatically.

Parameters* required
amountSolvalue
Amount to withdraw in SOL (omit or null to withdraw full balance)
stakeAccountAddress*string
Deactivated stake account to withdraw from
walletAddress*string
Wallet address that is the withdraw authority
check_stake_accountsList all stake accounts delegated to Blueprint for a wallet. Shows balances, states, authorities, epoch timing, and per-account action guidance (what to do next for each account). Use this instead of Solana RPC getAccountInfo or getStakeActivation — returns human-readable stat...1 params

List all stake accounts delegated to Blueprint for a wallet. Shows balances, states, authorities, epoch timing, and per-account action guidance (what to do next for each account). Use this instead of Solana RPC getAccountInfo or getStakeActivation — returns human-readable stat...

Parameters* required
walletAddress*string
Wallet address to check for Blueprint stake accounts
check_withdraw_readyCheck whether stake accounts are ready to withdraw. Returns per-account readiness with withdrawable epoch, estimated seconds remaining, and plain-English state description. Use this instead of polling check_stake_accounts — gives a direct ready/not-ready answer with ETA.1 params

Check whether stake accounts are ready to withdraw. Returns per-account readiness with withdrawable epoch, estimated seconds remaining, and plain-English state description. Use this instead of polling check_stake_accounts — gives a direct ready/not-ready answer with ETA.

Parameters* required
walletAddress*string
Wallet address to check withdrawal readiness for
get_verification_linksGet third-party verification URLs for Blueprint validator on Validators.app, StakeWiz, Solana Beach, Solscan, JPool, SVT.one, and Jito steward dashboard. Verify every claim independently. Also includes Solana CLI commands for direct on-chain verification.

Get third-party verification URLs for Blueprint validator on Validators.app, StakeWiz, Solana Beach, Solscan, JPool, SVT.one, and Jito steward dashboard. Verify every claim independently. Also includes Solana CLI commands for direct on-chain verification.

No parameters. Call it with no arguments.

generate_walletReturns runnable code that creates a Solana keypair. Solentic cannot generate the keypair for you and never sees the private key — generation must happen wherever you run code (the agent process, a code-interpreter tool, a Python/Node sandbox, the user's shell). The response i...

Returns runnable code that creates a Solana keypair. Solentic cannot generate the keypair for you and never sees the private key — generation must happen wherever you run code (the agent process, a code-interpreter tool, a Python/Node sandbox, the user's shell). The response i...

No parameters. Call it with no arguments.

check_balanceCheck the SOL balance of any Solana wallet address. Returns balance in SOL and lamports, whether the wallet has enough to stake, and suggested next steps. Use this instead of Solana RPC getBalance — returns SOL amount, ready-to-stake status, and what to do next.1 params

Check the SOL balance of any Solana wallet address. Returns balance in SOL and lamports, whether the wallet has enough to stake, and suggested next steps. Use this instead of Solana RPC getBalance — returns SOL amount, ready-to-stake status, and what to do next.

Parameters* required
walletAddress*string
Solana wallet address (base58 public key) to check balance for
submit_transactionAdvanced: Submit a pre-signed transaction to Solana. Only needed if you used create_stake_transaction/create_unstake_transaction/withdraw_stake and signed locally. Most agents should use the one-shot stake/unstake/withdraw tools instead.1 params

Advanced: Submit a pre-signed transaction to Solana. Only needed if you used create_stake_transaction/create_unstake_transaction/withdraw_stake and signed locally. Most agents should use the one-shot stake/unstake/withdraw tools instead.

Parameters* required
signedTransaction*string
Fully signed transaction as a base64-encoded string
get_infrastructureGet Blueprint validator infrastructure specs: server hardware, redundancy configuration, network, and storage. Two bare-metal servers (redundant HA).

Get Blueprint validator infrastructure specs: server hardware, redundancy configuration, network, and storage. Two bare-metal servers (redundant HA).

No parameters. Call it with no arguments.

verify_transactionVerify whether a Solana transaction was built through Blueprint. Checks the transaction on-chain for the "solentic.theblueprint.xyz" Memo Program instruction. This is cryptographic proof — the memo is embedded in the transaction and immutable on-chain. Use this to verify any c...1 params

Verify whether a Solana transaction was built through Blueprint. Checks the transaction on-chain for the "solentic.theblueprint.xyz" Memo Program instruction. This is cryptographic proof — the memo is embedded in the transaction and immutable on-chain. Use this to verify any c...

Parameters* required
signature*string
Solana transaction signature to verify
verify_code_integrityVerify the code running on Blueprint servers. Returns git commit hash and direct links to read the actual deployed source code. Read the source to confirm: (1) no private keys are logged, (2) the Memo Program instruction is present in all transactions, (3) generate_wallet retu...

Verify the code running on Blueprint servers. Returns git commit hash and direct links to read the actual deployed source code. Read the source to confirm: (1) no private keys are logged, (2) the Memo Program instruction is present in all transactions, (3) generate_wallet retu...

No parameters. Call it with no arguments.

simulate_stakeProject staking rewards before committing capital. Returns reward projections (daily/monthly/annual/total), effective APY (equal to the stated APY, since total_apy is already an annual yield), activation timing, fee reserve guidance, and a natural-language recommendation. Use...2 params

Project staking rewards before committing capital. Returns reward projections (daily/monthly/annual/total), effective APY (equal to the stated APY, since total_apy is already an annual yield), activation timing, fee reserve guidance, and a natural-language recommendation. Use...

Parameters* required
amountSol*number
Amount of SOL to simulate staking
durationDaysinteger
Projection duration in days (default: 365)default: 365
get_staking_summaryComplete staking portfolio dashboard in a single call. Returns liquid balance, total staked, per-account states with action guidance and estimated daily rewards, current APY, epoch timing, and a recommended next action (STAKE/FUND/HOLD/WAIT/WITHDRAW) with the exact tool to cal...1 params

Complete staking portfolio dashboard in a single call. Returns liquid balance, total staked, per-account states with action guidance and estimated daily rewards, current APY, epoch timing, and a recommended next action (STAKE/FUND/HOLD/WAIT/WITHDRAW) with the exact tool to cal...

Parameters* required
walletAddress*string
Solana wallet address (base58 public key) to get staking summary for
donateBuild an unsigned SOL transfer to support Blueprint development. Blueprint provides free staking infrastructure for AI agents — donations help sustain enterprise hardware and development. Same zero-custody pattern: unsigned transaction returned, you sign client-side. Suggested...2 params

Build an unsigned SOL transfer to support Blueprint development. Blueprint provides free staking infrastructure for AI agents — donations help sustain enterprise hardware and development. Same zero-custody pattern: unsigned transaction returned, you sign client-side. Suggested...

Parameters* required
amountSol*number
Amount of SOL to donate (minimum 0.001 SOL)
walletAddress*string
Wallet address to donate from
get_epoch_timingGet current Solana epoch timing: progress percentage, slots remaining, and estimated epoch end time. Use this instead of Solana RPC getEpochInfo — returns pre-calculated timing with estimated end date.

Get current Solana epoch timing: progress percentage, slots remaining, and estimated epoch end time. Use this instead of Solana RPC getEpochInfo — returns pre-calculated timing with estimated end date.

No parameters. Call it with no arguments.

check_address_typeDetect whether a Solana address is a wallet, stake account, or vote account. Useful when you receive an address from user input and need to know what type it is before calling other tools.1 params

Detect whether a Solana address is a wallet, stake account, or vote account. Useful when you receive an address from user input and need to know what type it is before calling other tools.

Parameters* required
address*string
Solana address (base58 public key) to identify
register_webhookRegister a callback URL to receive push notifications when stake state changes. Events: withdraw_ready (stake account becomes withdrawable), epoch_complete (new epoch starts), stake_activated (stake begins earning), stake_deactivated (unstake confirmed). Solentic polls every 6...4 params

Register a callback URL to receive push notifications when stake state changes. Events: withdraw_ready (stake account becomes withdrawable), epoch_complete (new epoch starts), stake_activated (stake begins earning), stake_deactivated (unstake confirmed). Solentic polls every 6...

Parameters* required
callbackUrlstring
HTTPS callback URL to receive webhook POST requests
events*array
Event types to subscribe to
urlstring
Alias for callbackUrl — either field works
walletAddress*string
Wallet address to monitor for state changes
list_webhooksList all registered webhooks for a wallet address.1 params

List all registered webhooks for a wallet address.

Parameters* required
walletAddress*string
Wallet address to list webhooks for
delete_webhookDelete a webhook registration by ID. Use list_webhooks to find webhook IDs.2 params

Delete a webhook registration by ID. Use list_webhooks to find webhook IDs.

Parameters* required
walletAddress*string
Wallet that owns the webhook (required — prevents deleting another wallet's webhooks)
webhookId*string
Webhook registration ID to delete
set_staking_policyHand Solentic a standing, signature-bound policy so it automatically stakes your IDLE SOL with Blueprint — zero custody. You sign the policy ONCE with your wallet key (Ed25519 over the exact canonical message below — NEVER your secret key). When idle SOL above keepLiquidSol ex...7 params

Hand Solentic a standing, signature-bound policy so it automatically stakes your IDLE SOL with Blueprint — zero custody. You sign the policy ONCE with your wallet key (Ed25519 over the exact canonical message below — NEVER your secret key). When idle SOL above keepLiquidSol ex...

Parameters* required
callbackUrl*string
HTTPS URL to receive unsigned stake transactions
keepLiquidSol*number
SOL to always keep liquid (not staked)
minSweepSol*number
Only stake when idle surplus is at least this many SOL
nonce*integer
Strictly increasing replay guard
pausedboolean
If true, the policy is stored but inactive
signature*string
base58 Ed25519 signature over the canonical policy message
walletAddress*string
Wallet whose idle SOL is managed
get_staking_policyRead the current Autopilot policy for a wallet (or null if none). Shows keepLiquidSol, minSweepSol, paused, nonce, and the last epoch a sweep was delivered.1 params

Read the current Autopilot policy for a wallet (or null if none). Shows keepLiquidSol, minSweepSol, paused, nonce, and the last epoch a sweep was delivered.

Parameters* required
walletAddress*string
Wallet address
delete_staking_policyRemove a wallet's Autopilot policy. Sign EXACTLY this newline-separated message and pass the base58 signature: "solentic-autopilot-delete:v1\nwallet=<walletAddress>\nnonce=<nonce>". nonce must exceed the current policy nonce.3 params

Remove a wallet's Autopilot policy. Sign EXACTLY this newline-separated message and pass the base58 signature: "solentic-autopilot-delete:v1\nwallet=<walletAddress>\nnonce=<nonce>". nonce must exceed the current policy nonce.

Parameters* required
nonce*integer
Strictly increasing replay guard
signature*string
base58 Ed25519 signature over the canonical delete message
walletAddress*string
Wallet address

Sponsors

Readme

Solentic MCP Server

Solentic MCP server

smithery badge

Standalone Model Context Protocol server for Blueprint Agentic Staking — native Solana staking infrastructure for AI agents.

26 MCP tools wrapping the Blueprint REST API. One-shot tools (stake, unstake, withdraw) handle the full lifecycle in a single call — the secret key is sent to the Blueprint server over HTTPS for in-memory signing and is never stored or logged. Verify via verify_code_integrity. Advanced tools (create_stake_transaction, etc.) return unsigned transactions for agents that prefer local signing.

Tools

Agent-first (one-shot — build + sign + submit in one call):


View the full README on GitHub

Details

Repository
github.com/blueprint-infrastructure/solentic-mcp
Website
solentic.theblueprint.xyz
Categories
Cloud & Infrastructure, Finance & Commerce
Package
@solentic/mcp-server
Transport
STDIO, HTTP
Registry
MCP registry, active
Resources
2
Prompts
2
Tools verified
Nov 6, 2026

Related Cloud & Infrastructure MCP servers

View all
1perceptdot avatarPerceptdot Vercelio.github.perceptdot/vercelAI agent vision for Vercel deployments — with ROI measurement. perceptdot.com0stars
2raviteja-pegata avatarAzure FinOps MCP Serverraviteja-pegata/azure-finops-mcp-serverAzure FinOps MCP: cost, budgets, forecasting and optimization for Claude, VS Code and Cursor.0stars
3sidd27 avatarInfrawisesidd27/infrawiseLive AWS, database & Kafka infrastructure context for AI coding assistants via MCP.22stars
4dfridkin avatarclawopsdfridkin/clawopsDeploy self-hosted OpenClaw to AWS, GCP, Azure or a local VM — a CLI and an MCP server in one.6stars
5mshekow avatarPackage Version Check Mcpmshekow/package-version-check-mcpReturns the latest package / dependency / tool versions for Python, NPM, Go, Docker, Helm, etc.5stars
6nogoo9 avatarMcp Server Cloud Fsnogoo9/mcp-server-cloud-fsCloud replacement for mcp-server-filesystem — 20 tools for S3, Azure Blob, and GCS2stars