call_read_only_function
Call a read-only function on a smart contract
This record as markdown: /tools/stack-ai-mcp-stacks-mcp-server/call-read-only-function.md
What call_read_only_function does on Stacks AI MCP Server
AI agents call call_read_only_function to retrieve information from Stacks AI MCP Server without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
Why call_read_only_function is rated Low
Read-only function calls on smart contracts are data retrieval operations that do not modify state or execute arbitrary logic. They pose minimal risk as they cannot create, modify, or delete data, execute external operations, or move funds. The constraint to read-only functions ensures no state-changing operations can occur.
From the tool's definition Tool name includes 'read_only' and description states 'Call a read-only function on a smart contract', which explicitly indicates query/retrieval operations with no side effects.
Attacks that exploit this kind of access
The rule that runs call_read_only_function safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Stacks AI MCP Server, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For call_read_only_function, this is the rule to start with:
call_read_only_function is read-only, so it stays allowed. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Stacks AI MCP Server, apply this rule, and every call_read_only_function call is checked against it from then on.
Questions about call_read_only_function
Call a read-only function on a smart contract. It is categorised as a Read tool in the Stacks AI MCP Server MCP Server, which means it retrieves data without modifying state.
Register the Stacks AI MCP Server MCP server in PolicyLayer and add a rule for call_read_only_function: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Stacks AI MCP Server. Nothing to install.
call_read_only_function is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the call_read_only_function rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for call_read_only_function. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
call_read_only_function is provided by the Stacks AI MCP Server MCP server (stack-ai-mcp/stacks-mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Stacks AI MCP Server, and thousands of servers like it.
This server
Across the catalogue