Sui MCP Server
Provides tools for interacting with the Sui blockchain, including wallet management, Move smart contract development (build, test, and publish), and querying on-chain objects and transaction data.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Sui MCP ServerCheck my SUI balance and wallet address"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Sui Agent MCP
MCP (Model Context Protocol) server that provides Sui blockchain tools for Claude Code.
Features
Wallet Control: Interact with Sui Agent Wallet for signing transactions
Move Development: Build, test, and publish Move smart contracts
On-chain Queries: Fetch object data and decompile contracts
Related MCP server: GOAT MCP Server
Tools (14 total)
Wallet Tools
Tool | Description |
| Get current wallet address |
| Check SUI balance |
| List all derived accounts |
| View pending signing requests |
| Approve a pending transaction |
| Reject a pending transaction |
| Switch network (mainnet/testnet/devnet/localnet) |
| Sign and execute unsigned transaction |
CLI Tools
Tool | Description |
| Run any Sui CLI command |
| Build a Move package |
| Run tests with coverage analysis |
| Generate unsigned publish transaction |
Query Tools
Tool | Description |
| Get information about a Sui object |
| Get Suivision URL for package source |
Installation
Prerequisites
Node.js 18+
Sui CLI installed and configured
Sui Agent Wallet (optional, for wallet tools): sui-skills
Add to Claude Code
# Option 1: Install from npm (recommended)
claude mcp add sui -- npx -y sui-agent-mcp
# Option 2: Clone and run locally
git clone https://github.com/EasonC13-agent/sui-mcp.git
cd sui-mcp
npm install
npm run build
claude mcp add sui -- node $(pwd)/dist/index.jsVerify Installation
claude mcp list
# Should show: suiConfiguration
Wallet Server URL
By default, the server connects to http://localhost:3847 for wallet operations.
Override with environment variable:
SUI_WALLET_SERVER=http://localhost:3847 npx sui-mcpUsage Examples
Once added to Claude Code, you can use natural language:
"What's my Sui wallet address?"
"Check my SUI balance"
"Build the Move package at ./my-contract"
"Run tests with coverage for the counter module"
"Publish this contract to testnet"
"Get info about object 0x123..."
Contract Deployment Workflow
Build:
sui_move_buildGenerate unsigned tx:
sui_move_publish_unsignedSign and execute:
sui_wallet_sign_execute
Related Projects
sui-agent-wallet - Chrome extension + local server for AI-controlled Sui wallet
sui-move skill - Sui Move development reference
sui-coverage skill - Test coverage analysis
sui-decompile skill - On-chain contract decompilation
License
MIT
Available Tools
14 toolssui_cliB
Run any Sui CLI command (e.g., 'client gas', 'move build', 'client object ')
| Name | Required | Description | Default |
|---|---|---|---|
| cwd | No | Working directory for the command | |
| args | Yes | Arguments to pass to sui CLI |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description lacks warnings about potential destructive actions or permissions required for arbitrary CLI commands. Minimal disclosure of behavioral traits beyond the basic 'run' action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with examples is concise and efficient. Could organize as bullet list, but not necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema; description omits return values (stdout/stderr) and error behavior. For a CLI wrapper with no annotations, this is insufficient for safe usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds examples but no extra semantics beyond schema descriptions of 'args' and 'cwd'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly defines the tool as executing 'any Sui CLI command', with examples ('client gas', 'move build') that distinguish it from sibling tools (e.g., sui_decompile, sui_move_build) which are specialized.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Examples imply usage for commands not covered by siblings, but no explicit when-to-use, when-not-to-use, or alternatives provided. Agent must infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_decompileA
Get URL to view decompiled source code for a Sui package on Suivision
| Name | Required | Description | Default |
|---|---|---|---|
| packageId | Yes | The package ID to view |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It states it returns a URL, implying a read-only operation, but does not specify success conditions, error handling, or whether the URL is always accessible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-formed sentence with no unnecessary words. It is front-loaded and efficiently communicates the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple with one parameter and no output schema, the description is largely complete. It explains the input and the output (a URL). Minor gap: it could clarify that the URL is to Suivision, which is already mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 100% of parameters with a description. The tool's description adds no extra meaning beyond 'The package ID to view' already present in the schema. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Get URL' and the resource 'decompiled source code for a Sui package on Suivision'. It is specific and distinct from sibling tools like sui_object or sui_cli, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when needing a decompiled source URL, but provides no explicit when-not-to-use guidance or mention of alternatives. It suffices for a simple tool but lacks exclusionary context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_move_buildC
Build a Move package
| Name | Required | Description | Default |
|---|---|---|---|
| packagePath | Yes | Path to the Move package directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as side effects, output artifacts, or required permissions. For a build tool, stating that it produces compiled .mv files or affects the local file system would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only four words, which is concise but not particularly informative. While it avoids fluff, it sacrifices crucial context. A slightly longer description would be more helpful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 required param, no output schema, no annotations), the description should at least hint at the output or typical usage. It does not mention what happens after building or what artifacts are produced, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (one parameter, packagePath, is described in schema as 'Path to the Move package directory'). The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Build a Move package' clearly states the tool's action and resource. It distinguishes from siblings like sui_move_publish_unsigned and sui_move_test_coverage by focusing on the build step. However, it could be more specific about what 'build' entails (e.g., compilation to bytecode).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like sui_move_publish_unsigned. No prerequisites mentioned (e.g., existence of a Move.toml). The agent must infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_move_publish_unsignedA
Generate unsigned transaction bytes for publishing a Move package (use with sui_wallet_sign_execute)
| Name | Required | Description | Default |
|---|---|---|---|
| gasBudget | No | Gas budget in MIST (default 0.1 SUI) | |
| packagePath | Yes | Path to the Move package |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description accurately states the function (generate unsigned bytes) which implies no immediate state change, but it does not detail any permissions, side effects, or error conditions. Given no annotations, a bit more context would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, front-loading the core action, and includes a critical workflow hint in a compact form. Every word is purposeful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the core function and suggests a workflow, but it lacks details on output format, error scenarios, and preconditions. Given the absence of an output schema, more explanation of what the tool returns would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are described adequately in the schema with units and defaults. The tool description does not add additional semantic information beyond what the schema already provides, so it meets the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (generate unsigned transaction bytes) and the resource (publishing a Move package), and hints at a workflow with a sibling tool, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear usage hint by mentioning the companion tool for signing, indicating a two-step workflow. However, it lacks explicit exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_move_test_coverageC
Run Move tests with coverage analysis
| Name | Required | Description | Default |
|---|---|---|---|
| module | No | Specific module to analyze coverage for | |
| packagePath | Yes | Path to the Move package |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavior, but it only states the purpose. It does not mention side effects (e.g., generation of coverage reports), required permissions, or that tests are executed, leaving the agent to infer.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is efficient, but it lacks any structure such as examples or usage hints. It is not overly long, but it could be more informative without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and no annotations, the description should explain what coverage analysis produces (e.g., a report) or how to interpret results. It fails to provide a complete picture, making it insufficient for an agent to use effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds coverage analysis context but no additional detail beyond what the schema provides for parameters like packagePath and module.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Run' and resource 'Move tests with coverage analysis', distinguishing it from sibling tools like sui_move_build or sui_move_publish_unsigned. However, it could be more specific about what coverage analysis entails.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like sui_move_build or the generic sui_cli. There is no mention of prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_objectB
Get detailed information about a Sui object
| Name | Required | Description | Default |
|---|---|---|---|
| objectId | Yes | The object ID to query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It only mentions 'Get detailed information', implying read-only, but fails to specify what 'detailed information' includes, error behavior, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded, and efficient. However, it could be expanded slightly without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description should hint at the return value's scope. 'Detailed information' is vague; missing details on what fields are returned, error scenarios, or object existence requirements.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already describes the parameter ('The object ID to query'). The description adds no additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('detailed information about a Sui object'). It distinguishes from sibling tools as no other tool appears to query object details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for querying object by ID but provides no explicit guidance on when to use this tool versus alternatives, nor any conditions or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_accountsA
List all accounts in the Sui Agent Wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits such as authentication requirements, idempotency, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no unnecessary words. Front-loaded with key action and target.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple with no parameters, the description does not explain what the list contains (e.g., addresses) or the return format, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, and schema coverage is 100%. The description adds no param-specific info, but a baseline of 4 is appropriate for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'List' and the resource 'all accounts in the Sui Agent Wallet', distinguishing it from sibling tools like sui_wallet_balance or sui_wallet_address.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Does not mention prerequisites, exclusions, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_addressA
Get the current Sui Agent Wallet address
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It implies a read-only operation with 'Get', but does not explicitly state no side effects or network behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with verb and resource, no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is adequate but minimal. It does not explain the address format or any output details, which could be helpful given no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so no parameter details are needed. The description is sufficient for this case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'current Sui Agent Wallet address', distinguishing it from sibling wallet tools like sui_wallet_accounts, sui_wallet_balance, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. With many wallet-related siblings, some context or exclusions would be helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_approveA
Approve a pending transaction by request ID
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes | The request ID to approve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It indicates a mutation (approve) but fails to disclose side effects, authorization needs, or post-approval behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence of 7 words, efficiently conveying the core purpose without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description is adequate. However, adding a note about prerequisites (e.g., pending transactions must exist) would enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema description for 'requestId' is clear. The tool description adds no additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Approve', the resource 'pending transaction', and the method 'by request ID'. It effectively differentiates from siblings like 'sui_wallet_reject' and 'sui_wallet_sign_execute'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for approving pending transactions but provides no explicit guidance on when to use this tool versus alternatives such as 'sui_wallet_reject' or 'sui_wallet_sign_execute'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_balanceA
Get the balance of the current Sui Agent Wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only states 'Get balance' without disclosing whether it is read-only, requires authentication, or any side effects. Missing important behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, perfectly concise. No wasted words; every word adds value. Ideal for a simple getter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple balance retrieval with no parameters and no output schema, the description is adequate. However, it could mention the return format or any potential errors, but it is not incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage by absence, the baseline is 4. The description adds no additional meaning beyond the schema, but for a parameterless tool, no further elaboration is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the action (Get), the resource (balance), and the subject (current Sui Agent Wallet). It clearly distinguishes from sibling tools like sui_wallet_accounts and sui_wallet_address.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. While the tool's simplicity makes its usage obvious, the description does not provide any context about when it is appropriate or when to prefer other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_pendingB
Get pending transactions waiting for approval
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description accurately reflects a read-only query with no side effects, but lacks additional context such as whether results are per wallet or global, or any pagination info. With no annotations, the burden is on the description, and it is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys the core purpose without any extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no parameters or output schema, and the description is adequate for a simple retrieval. However, it does not specify scope (e.g., pending for the current wallet) or behavior, leaving some ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so schema coverage is 100%. The description does not need to explain parameters. Baseline of 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves pending transactions waiting for approval, using a specific verb and resource. While it does not differentiate from siblings like sui_wallet_accounts, the resource is distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., sui_wallet_approve, sui_wallet_reject). The agent is not told to call this first to see pending items before approving or rejecting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_rejectA
Reject a pending transaction by request ID
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes | The request ID to reject |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the basic action without explaining side effects (e.g., irreversibility, permission requirements, or state changes after rejection). This lack of detail reduces transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that directly conveys the purpose without extraneous information. It is appropriately sized and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with one parameter, so the description is minimally adequate. However, it lacks details on return values, error conditions, and behavioral context, which a complete description for a mutation tool should include.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a brief description for 'requestId'. The tool description does not add additional meaning beyond what the schema already provides. For high-coverage schemas, baseline is 3, and this is met.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action ('Reject') and the resource ('a pending transaction by request ID'). It directly addresses the tool's primary function and distinguishes it from siblings like 'sui_wallet_approve'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is used for rejecting pending transactions by request ID, but it provides no explicit guidance on when to use it versus alternatives (e.g., 'sui_wallet_approve'), nor does it mention prerequisites or context where this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_sign_executeB
Sign and execute an unsigned transaction (base64 encoded tx bytes)
| Name | Required | Description | Default |
|---|---|---|---|
| txBytes | Yes | Base64 encoded unsigned transaction bytes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description bears full burden. It only states 'sign and execute' without disclosing side effects like gas costs, authentication requirements, or error handling. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no wasted words. Efficient but could include more behavioral context without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a transaction execution tool, description omits important context: return value, prerequisites (e.g., active wallet), error conditions. No output schema specified, so description should cover these.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description merely restates the parameter info from the schema. No additional meaning or examples provided, meeting baseline but adding no value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool signs and executes an unsigned transaction, with specific verb+resource. It distinguishes from sibling wallet tools like sui_wallet_approve and sui_wallet_reject, which handle different operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as sui_wallet_approve or sui_cli. Agent must infer without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sui_wallet_switch_networkA
Switch the wallet network (mainnet, testnet, devnet, localnet)
| Name | Required | Description | Default |
|---|---|---|---|
| network | Yes | Network to switch to |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the action without disclosing behavioral traits like side effects (e.g., does switching reset wallet state?), authentication needs, or rate limits. For a state-changing tool, more transparency is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that immediately conveys the tool's function. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one enum parameter, no output schema), the description is minimally adequate. However, it lacks any mention of the tool's effect (e.g., does it change the active network immediately? Is there a confirmation?) and does not reference the wallet state.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents the single parameter 'network' with its enum values. The description adds no additional meaning beyond listing the same enum values, so it is merely redundant. Baseline 3 applies due to full schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Switch') and the resource ('wallet network'), and explicitly lists the four possible networks. This distinguishes it from sibling tools like sui_wallet_accounts or sui_wallet_balance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides the purpose but no guidance on when to use or when not to use this tool. It does not mention prerequisites (e.g., a connected wallet) or alternatives among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
14 tool updates
v1.0.0- First observed
sui_cli - First observed
sui_decompile - First observed
sui_move_build - First observed
sui_move_publish_unsigned - First observed
sui_move_test_coverage - First observed
sui_object - First observed
sui_wallet_accounts - First observed
sui_wallet_address - First observed
sui_wallet_approve - First observed
sui_wallet_balance - First observed
sui_wallet_pending - First observed
sui_wallet_reject - First observed
sui_wallet_sign_execute - First observed
sui_wallet_switch_network
TDQS
Scored across 14 tools
All tools have clearly distinct purposes. The wallet tools each handle different aspects (approve, reject, sign, etc.), the Move tools are separated by action (build, publish, test), and sui_cli is a catch-all for arbitrary commands, so no overlap.
Every tool follows the 'sui_' prefix with snake_case and uses a consistent verb_noun pattern (e.g., sui_move_build, sui_wallet_approve). No mixing of conventions.
14 tools is a well-scoped count for a Sui blockchain server. It covers wallet management, Move development, object queries, and a general CLI, without being overwhelming or too sparse.
Core workflows are covered: wallet operations, Move package management, object queries. A general CLI tool fills gaps for any missing functionality. Minor gaps exist for specific high-level operations like staking, but these are accessible via the CLI.
Maintenance
Related MCP Connectors
MCP server for Klever blockchain smart contract development.
Self-hosted MCP server: 26 deterministic dev, security, and EVM tools.
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
- SupabaseOAuthcom.supabase
MCP server for interacting with the Supabase platform
Related MCP Servers
- AlicenseBqualityAmaintenanceAn MCP server that provides seamless integration with the Neo N3 blockchain, allowing Claude to interact with blockchain data, manage wallets, transfer assets, and invoke smart contracts.1913 npm4MIT
- FlicenseNot gradedqualityDmaintenanceAn MCP server that connects Claude for Desktop with blockchain functionality, allowing users to check balances and send tokens on EVM and Solana chains through natural language interactions.-
- AlicenseNot gradedqualityFmaintenanceAn MCP server for the Sui blockchain that enables AI agents to manage accounts, execute token swaps, and perform smart contract development using the Sui CLI. It supports over 30 tools for DeFi operations, staking, and market data via Pyth price oracles.10 npm2MIT
- AlicenseAqualityCmaintenanceAn MCP server that enables AI agents to interact with the IOTA blockchain, supporting wallet management, transaction signing, and Move smart contract development. It provides tools for on-chain queries and CLI operations with a human-in-the-loop security model.1866MIT