Skip to main content
Glama
WINGFO-HQ

Solscan MCP Server

by WINGFO-HQ

Solscan MCP Server

A Model Context Protocol (MCP) server that provides LLMs with real-time access to Solana blockchain data through Solscan API v2.

🚀 Features

  • Account Intelligence: Comprehensive data on balances, transactions, transfers, and holdings (Tokens, NFTs, Stake).

  • Market Analytics: Track trending tokens, top lists, price data, and holder distributions.

  • Activity History: Deep dive into DeFi trading and NFT activities.

  • Network Transparency: Direct access to block details, transaction logs, and chain status.

Related MCP server: Dune API MCP Server

📦 Installation

  1. Clone this repository

  2. Install dependencies:

npm install
  1. Build the project:

npm run build

🛠 Usage with Claude Desktop

To use this MCP server with Claude Desktop, add the following to your Claude Desktop configuration:

{
  "mcpServers": {
    "solscan": {
      "command": "node",
      "args": [
        "C:\\YOUR_USERNAME\\YOUR_PROJECT_PATH\\mcp-solscan\\dist\\index.js"
      ]
    }
  }
}

🐳 Docker Support

You can also run this server using Docker:

docker-compose up --build -d

🔧 Architecture

The server uses Solscan API v2 (public endpoints) to fetch data directly, ensuring:

  • Speed: Direct API calls are faster than browser automation.

  • Reliability: Structured JSON responses.

  • Efficiency: Minimal resource usage compared to running a headless browser.

📝 Tools Reference

Tool

Description

get_account

Get details of a Solana account from Solscan.

get_transaction

Get details of a Solana transaction from Solscan.

get_account_transactions

Get recent transactions of a Solana account.

get_account_transfers

Get SPL transfers of a Solana account.

get_account_tokens

Get tokens held by a Solana account.

get_account_nfts

Get NFTs held by a Solana account.

get_account_stake_accounts

Get stake accounts held by a Solana account.

get_account_defi_activities

Get DeFi trading history of a Solana account.

get_account_nft_activities

Get NFT trading history of a Solana account.

get_token_meta

Get metadata of a token from Solscan.

get_token_holders

Get holders of a token from Solscan.

get_token_list

Get list of top tokens from Solscan.

get_token_trending

Get trending tokens from Solscan.

get_token_price

Get current price of a token from Solscan.

get_token_transfers

Get transfers of a token from Solscan.

get_chain_info

Get current chain info (latest block/slot).

get_block_detail

Get details of a specific block.

get_block_transactions

Get transactions in a specific block.

License

MIT

Available Tools

18 tools
get_accountC

Get details of a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it retrieves account details, but does not mention read-only behavior, response format, rate limits, or any side effects. This is minimal and leaves the agent in the dark about operational expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the verb and resource. It contains no repetitive or unnecessary information, making it maximally efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple get-by-address operation, the description provides a minimal but functional level of completeness. However, it does not enumerate what 'details' are returned, which could lead to uncertainty for the agent about whether the tool returns the expected data. Given the absence of annotations and output schema, a bit more detail about the return payload would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has a single required parameter 'address' with no description, and the description does not explicitly explain what format or meaning the address should have. Although the tool name and description imply the address is a Solana account address, the description adds little semantic value beyond the schema, and with 0% schema coverage, it should compensate more.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get details') and the resource ('a Solana account'), with the source (Solscan) included. It distinguishes the general account details from sibling tools that focus on specific activities, transactions, or token data, though it could be more specific about what 'details' entails.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternative tools like get_account_tokens or get_account_transactions. The description simply states what it does without any context, prerequisites, or exclusions, leaving the agent to infer from the name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_defi_activitiesB

Get DeFi activities (dextrading) of a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states what is returned and does not mention pagination, rate limits, authentication, sorting, or any side effects. The existence of a 'limit' parameter hints at pagination, but the description does not clarify behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the key action and resource. There is no redundant information, and every word contributes to the purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is no output schema and no annotations, the description is too sparse. It does not describe the response format, the scope of activities included, or any other contextual details that an agent would need to effectively use the tool. The presence of a limit parameter is not elaborated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It clarifies that 'address' refers to a Solana account, but it does not explain the 'limit' parameter or its default. The term 'DeFi activities' gives some context to the return data but leaves parameter semantics incomplete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' with a clear resource 'DeFi activities (dextrading) of a Solana account from Solscan'. It explicitly distinguishes this tool from siblings like get_account_transfers and get_account_nft_activities by narrowing to DeFi activities.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no explicit guidance on when to use this tool versus alternatives. It mentions 'dextrading' as a hint but does not name any sibling tools or state exclusions, leaving the agent to infer the intended use case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_nft_activitiesC

Get NFT activities of a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosing behavioral traits. It only says 'Get' (suggesting a read operation) but does not mention pagination, ordering, potential rate limits, or what exactly constitutes 'activities'. The description is too brief to provide meaningful transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence, concise and front-loaded with the primary action and resource. It wastes no words, though it could have used the brevity to include additional useful context without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is relatively simple with two parameters and no output schema, but the description is minimal. It fails to explain what NFT activities are included (e.g., transfers, sales, mints), how the limit parameter works, or any requirements like account type. Given the lack of annotations, this description is insufficient for an agent to fully understand the tool's behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate by explaining parameters. It does not mention 'address' or 'limit' at all. While these names are somewhat self-explanatory, the description adds no additional semantic context beyond the schema fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('NFT activities of a Solana account from Solscan'), clearly indicating the tool's function. However, it does not explicitly distinguish itself from sibling tools like get_account_nfts or get_account_transfers, relying on the term 'activities' to imply a feed of events.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as get_account_nfts or get_account_transfers. The description simply states what it does without any context or exclusions, leaving the agent to infer appropriate usage from the tool name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_nftsB

Get NFTs held by a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

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 offers minimal behavioral context: 'from Solscan' implies a data source, but it does not disclose that this is a read-only operation, potential rate limits, pagination behavior, or what happens if the account has no NFTs or an invalid address.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core purpose without any redundancy. It is appropriately concise for a straightforward read operation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations, no output schema, and 0% schema description coverage, the description is incomplete. It fails to explain likely return structure, how to interpret the list of NFTs, or any edge cases. For a tool with two parameters and informational needs, this is insufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must explain parameters. 'address' is implicitly covered by 'Solana account', but 'limit' is not mentioned at all. The description does not clarify the meaning or purpose of the optional limit parameter beyond what the schema name suggests.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get', the resource ('NFTs held by a Solana account'), and the source ('from Solscan'). This distinguishes it from siblings like get_account_tokens (which could include non-NFT tokens) and get_account_nft_activities (which is about activity, not holdings).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 such as get_account_tokens or get_account_nft_activities. The description merely states what it does without any context on selection criteria or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_stake_accountsB

Get stake accounts held by a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the basic operation without mentioning pagination, rate limits, authorization, or return format. For a simple read tool, this is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence that immediately conveys the tool's function. It is appropriately sized and front-loaded, with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description should explain what the response contains or any usage nuances. It only states the basic purpose, leaving the agent to infer details about stake account data and pagination, making it incomplete for a comprehensive understanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, and the description provides no information about the 'address' or 'limit' parameters. The description does not compensate for the schema's lack of semantic detail, leaving the agent to guess parameter meaning and constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Get' with a clear resource 'stake accounts held by a Solana account', making it easy to distinguish from sibling tools like get_account_tokens or get_account_transactions. The addition 'from Solscan' provides source context, further clarifying the tool's exact purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended usage is implied by the tool's name and description, but there is no explicit guidance on when to use this tool versus alternatives. No exclusions or preferred scenarios are stated, so the agent must rely on inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_tokensB

Get tokens held by a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

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' which implies a read operation, but does not disclose response format, pagination, or any external API limitations. The description adds minimal behavioral context beyond the purpose.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no unnecessary words. It is appropriately concise for a simple retrieval tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations, output schema, and parameter descriptions, this description is insufficient. It provides only the basic purpose without the contextual information needed for an agent to select and invoke the tool correctly among many similar siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain the 'limit' or 'address' parameters. It only implies that 'address' refers to the Solana account, but 'limit' is unexplained. The description provides minimal compensation for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is clear and specific: 'Get tokens held by a Solana account from Solscan' states the verb and resource, and distinguishes this from siblings like get_account_transactions or get_token_holders by focusing on tokens held by an account.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus alternatives. It does not mention exclusions, prerequisites, or when another tool would be more appropriate, leaving the agent to infer usage from the name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_transactionsB

Get recent transactions of a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It does not mention return format, pagination, rate limits, or error behavior. While 'Get' implies a read-only operation, it lacks explicit details beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that is immediately informative. It avoids unnecessary detail and is easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is too sparse. Missing usage guidance and behavioral details (e.g., what 'recent' means, how results are returned) leaves the agent under-informed when selecting and invoking the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage, so the description must compensate. However, it does not explain the role of 'address' or 'limit', leaving the agent to infer from parameter names alone. This is insufficient given the low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get'), the resource ('recent transactions of a Solana account'), and the data source ('from Solscan'). It is specific and distinguishes from siblings like get_account_transfers and get_transaction by using the distinct term 'transactions'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. There is no mention of exclusions, prerequisites, or scenarios where another tool would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_account_transfersB

Get SPL transfers of a Solana account from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes
removeSpamNo
excludeAmountZeroNo

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavioral traits. It only states that the tool gets transfers from Solscan, but does not explain behavior such as how the 'limit', 'removeSpam', or 'excludeAmountZero' parameters affect results, nor mention pagination, rate limits, or response structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. It is extremely concise and easy to parse, with the action and object stated immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 4 parameters, no annotations, and no output schema, the description is too sparse. It omits parameter semantics, pagination behavior, and guidance on when to use it relative to sibling tools. While the core purpose is stated, the description is not complete enough for an agent to invoke the tool with confidence.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain any parameters. The parameter names like 'removeSpam' and 'excludeAmountZero' are somewhat self-explanatory, but the description adds no meaning beyond the bare schema, leaving exact behavior unclear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses the specific verb 'Get' with the resource 'SPL transfers of a Solana account' and names the source 'Solscan', clearly identifying the tool's function. It distinguishes from sibling tools like get_account_transactions or get_token_transfers by focusing on SPL transfers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a use case for retrieving token transfer history, but it does not explicitly state when to prefer this tool over alternatives like get_account_transactions or get_token_transfers. No exclusions or conditional guidance are provided, leaving usage to be inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_block_detailC

Get details of a specific block

ParametersJSON Schema
NameRequiredDescriptionDefault
blockYes

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for behavioral disclosure. It only states that details are retrieved, without specifying what type of details (header, transactions, etc.), any access constraints, or response characteristics. This is minimal and not misleading, but clearly insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one clean, front-loaded sentence with no unnecessary words. It is concise and easy to parse, though it could be more informative without sacrificing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations, output schema, and parameter documentation, the description leaves out crucial details such as return format, what 'details' includes, and how to specify the block. An AI agent would struggle to invoke this tool correctly without additional information.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema defines a single 'block' parameter with 0% description coverage, and the tool description does not compensate. It is unclear whether the parameter expects a block number, block hash, or an object. The description offers no additional meaning beyond the parameter name itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get details of a specific block' clearly identifies the tool's action (get) and resource (details of a specific block). It distinguishes from sibling tools like get_transaction or get_account by focusing on blocks, but does not explicitly differentiate from the similar sibling get_block_transactions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 such as get_block_transactions. The description lacks any context about prerequisites, typical use cases, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_block_transactionsC

Get transactions in a specific block

ParametersJSON Schema
NameRequiredDescriptionDefault
blockYes

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only states a basic read operation but omits details like the expected format of 'block' (hash vs height), whether results are paginated, or what the response contains. This is minimal and lacking context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no redundant words. It is appropriately sized and front-loaded, earning full marks for conciseness and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter tool, the description is still incomplete: it lacks essential context about the parameter's meaning and return behavior. With no output schema or annotations, the description does not fully equip an agent to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, so the description must compensate. However, it merely says 'specific block' without explaining whether 'block' is a number, hash, or something else. It adds no meaning beyond the schema's type declaration, leaving the parameter semantics ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get transactions in a specific block' clearly states the action (get) and resource (transactions in a block), distinguishing it from siblings like get_transaction (single transaction) and get_block_detail (block metadata). It is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as get_block_detail or get_transaction, nor any exclusions or prerequisites. There is no 'when-to-use' or 'when-not-to-use' context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_chain_infoA

Get current chain info (latest block/slot) from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for behavioral disclosure. The verb 'Get' implies a read-only operation, and the phrase 'latest block/slot' clarifies the data scope. However, it does not explicitly state that there are no side effects, nor does it disclose any details about data freshness, caching, or potential errors.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the action and resource. Every segment ('Get', 'current chain info', 'latest block/slot', 'from Solscan') adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (zero parameters, no output schema), the description adequately communicates the essential return value ('latest block/slot'). It does not omit critical context, though it is minimal.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema is empty, so there is nothing to explain. The description adds no parameter information, but the baseline of 4 applies for parameterless tools, and the description's focus on the output is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

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 'current chain info', with the parenthetical '(latest block/slot)' explicitly specifying what is returned. This distinguishes it from sibling tools that focus on transactions, accounts, tokens, or block details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or preferred scenarios despite the availability of other chain-related tools among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_token_holdersC

Get holders of a token from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries the full burden of behavioral disclosure. While 'Get' implies a read-only operation, the description provides no details on pagination, return format, rate limits, or any side effects. It lacks transparency about what the caller should expect from the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no fluff and clearly front-loads the core purpose. It is efficiently written, though it could be slightly richer; however, for the dimension of conciseness, it earns a high score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the low complexity (2 params) but no annotations, no output schema, and minimal description, the tool is not fully contextualized. Important details like the default limit, what data is returned, and whether the list is ordered or paginated are missing, making the description incomplete for an agent to invoke it optimally.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention or explain either parameter (address or limit). It does not clarify that 'address' is the token address or that 'limit' controls the number of holders returned, so the description adds no value beyond the schema's raw names and types.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Get holders of a token from Solscan' uses a specific verb ('Get') and resource ('holders of a token') that clearly distinguishes it from sibling tools like get_token_meta or get_token_price. It is unambiguous and directly states what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage guidance is provided. The description only states the function and does not mention when to use this tool versus alternatives (e.g., get_token_meta, get_token_transfers) or any exclusions. There is no context for selecting this tool over siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_token_listC

Get list of top tokens from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
sortByNomarket_cap
directionNodesc

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It fails to mention that the list is sorted and filtered by parameters with defaults, or that there is no pagination limit. The term 'top tokens' is vague and doesn't explain sorting behavior or any potential API constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence with no wasted words, which is structurally acceptable. However, it is under-specified, lacking essential information about sorting and parameters, so it doesn't earn full marks for being appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and annotations, the description is incomplete. It doesn't describe the expected output structure, the meaning of 'top', or any pagination or data freshness details. For a tool with several similar siblings, more context is needed to set expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% and the description adds no meaning to the parameters. It doesn't explain what 'limit', 'sortBy', or 'direction' control, nor does it clarify the meaning of 'top'. The description gives no hints about the parameter values, making it of no help beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets a list of top tokens from Solscan, using a specific verb and resource. It is distinguishable from siblings like get_token_meta or get_token_price, though it doesn't explicitly differentiate from get_token_trending, which could overlap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like get_token_trending or get_token_holders. There is no mention of prerequisites, typical use cases, or contexts where this tool is preferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_token_metaC

Get metadata of a token from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYes

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosing behavior. It only says 'Get metadata' without specifying what metadata is included, whether it is a safe read-only operation, or any potential rate limits or required permissions. This is a minimal read operation, but the description lacks the detail needed to set expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, succinct sentence that directly conveys the tool's purpose with no fluff or repetition. It is appropriately sized for a simple one-parameter tool, though it could have been more informative without becoming verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and no annotations, so the description must compensate by explaining expected behavior and return values. It fails to do so, leaving the agent uncertain about the response structure and the exact scope of 'metadata.' For a tool with only one parameter, this is a clear gap in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 0%, and the description does not explain the 'address' parameter beyond implying it identifies a token. There is no clarification of the address format, whether it is a token contract address, or any validation. The description adds almost no meaning beyond the schema's bare parameter name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get metadata') and the resource ('a token'), with the source ('from Solscan'). It effectively distinguishes this from sibling tools like get_token_price or get_token_transfers, which focus on specific aspects rather than general metadata. However, 'metadata' is somewhat broad and not delimited, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool versus the many sibling tools (e.g., get_token_holders, get_token_price). There is no mention of use cases, prerequisites, or exclusions. The description simply states what it does without any contextual direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_token_priceB

Get current price of a token from Solscan (via metadata)

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYes

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, but it only mentions 'via metadata', giving a hint about data source without disclosing caveats like price freshness, potential null results, or whether the data is live. It does not clarify if this is a read-only operation or if failures are possible.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no unnecessary words. It front-loads the core action and source, making it easy to scan and understand.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter read tool, the description is minimally sufficient but lacks important context such as return value format, error behavior, or data reliability. No output schema exists, so the description could provide more guidance, but the tool's simplicity keeps this at a mid-range score.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has one parameter 'address' with no description, and the schema coverage is 0%. The description only says 'token' which implies that 'address' is the token's address, but it doesn't specify the address type (e.g., mint, SPL) or any format requirements. Minimal value is added beyond the parameter name.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Get') and resource ('current price of a token'), and the source ('from Solscan') differentiates it from sibling tools like get_token_meta. It is distinct and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for retrieving token prices, but it provides no explicit guidance on when to use it over alternatives or any exclusions. Sibling tools exist for other token-related data, but no comparison is made.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_token_transfersB

Get transfers of a token from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
addressYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full responsibility for behavioral disclosure, but it fails to mention key behaviors like pagination, the role of the limit parameter, whether transfers are incoming/outgoing, or if address refers to the token's mint address. The description is too high-level to set accurate expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no redundant words. It is front-loaded and efficiently communicates the core function without any unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations, no output schema, and minimal descriptions, the level of detail is insufficient. The description does not clarify the address parameter, limit behavior, or the exact scope of transfers, leaving the agent with potentially ambiguous invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not explain either parameter. 'address' is ambiguous—it could be a token contract address or a wallet address—and 'limit' is not mentioned at all. The description adds no meaning beyond the raw schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves transfers of a specific token from Solscan, using a specific verb and resource. It distinguishes itself from sibling tools like get_account_transfers by focusing on the token rather than an account.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as get_account_transfers or get_token_holders. It does not state intended scenarios, exclusions, or comparisons to other tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_transactionA

Get details of a Solana transaction from Solscan

ParametersJSON Schema
NameRequiredDescriptionDefault
signatureYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the burden of behavioral disclosure. The verb 'Get' implies a read-only operation, but the description does not elaborate on any other behavior such as error handling, rate limits, or whether a missing signature results in an error or null response. It adds minimal context beyond the tool's name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no wasted words. It front-loads the main purpose ('Get details') and includes a relevant qualifier ('from Solscan'). It is appropriately sized for a simple read tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a simple tool with one parameter and no output schema, so the description does not need to be extensive. However, it lacks any detail about what 'details' include (e.g., status, fee, block height), and the absence of an output schema makes the return value unclear. The description is sufficient for basic understanding but not fully complete for an agent to predict the tool's response.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema lists only 'signature' with no description, and schema description coverage is 0%. The description does not mention the parameter or explain what a signature is or its expected format (e.g., base58 transaction ID). With such low schema coverage, the description fails to compensate, leaving the parameter semantics ambiguous.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Get'), resource ('details of a Solana transaction'), and source ('Solscan'). It distinguishes itself from sibling tools that focus on accounts, tokens, blocks, or chain information, making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies this tool is used to retrieve transaction details, but it does not explicitly state when to prefer it over alternatives (e.g., get_block_transactions or get_account_transactions). No exclusions or alternative suggestions are provided, leaving usage context only implied by the name and description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.4/5.0
Disambiguation5/5

Each tool targets a distinct resource and action: transaction, account sub-types (transactions, transfers, defi, nft, tokens, nfts, stake), token sub-types (meta, holders, list, trending, price, transfers), chain info, and block detail/transactions. No two tools appear to serve the same purpose.

Naming Consistency5/5

All tool names follow the consistent get_<resource>_<subtype> pattern, with get_ prefix used throughout. Even get_transaction and get_chain_info fit the pattern as resource-only names. No camelCase or mixed conventions.

Tool Count5/5

18 tools is a reasonable number for a blockchain explorer server covering transactions, accounts, tokens, chain, and blocks. Each tool has a clear place, and the count does not feel bloated or sparse.

Completeness4/5

The server covers the main read-only operations for Solana exploration: transactions, account details and activities, token information, block data, and chain info. Minor gaps like missing token price history or validator info, but the core surface is solid.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/WINGFO-HQ/mcp-solscan'

If you have feedback or need assistance with the MCP directory API, please join our Discord server