Get NFTs owned by a wallet address
AI agents call get_nfts_by_owner to retrieve information from Web3 without modifying anything — typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
This tool queries blockchain data to retrieve information about NFTs held by a specific wallet address. It is a read-only operation with no side effects—it does not create, modify, delete, or execute anything. The blast radius of misuse is minimal; an attacker could enumerate NFT holdings but cannot transfer assets, execute code, or cause financial harm. Classification as Read is appropriate.
From the tool's definition Tool name 'get_nfts_by_owner' and description 'Get NFTs owned by a wallet address' indicate a query operation that retrieves data about NFT ownership without modifying, executing code, or initiating transactions.
Documented attack patterns abuse exactly the kind of access get_nfts_by_owner gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and Web3, and nothing reaches the server without passing your rules. This is the rule we recommend for get_nfts_by_owner:
{
"version": "1",
"default": "deny",
"tools": {
"get_nfts_by_owner": {}
}
} get_nfts_by_owner is read-only, so it stays allowed — but everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Get NFTs owned by a wallet address. It is categorised as a Read tool in the Web3 MCP Server, which means it retrieves data without modifying state.
Register the Web3 MCP server in PolicyLayer and add a rule for get_nfts_by_owner: 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 Web3. Nothing to install.
get_nfts_by_owner 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 get_nfts_by_owner 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 get_nfts_by_owner. 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.
get_nfts_by_owner is provided by the Web3 MCP server (tumf/web3-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from Web3, add the rest of your stack, and see everything your agents can call. Then put policy on all of it.
Free to start. No card required.
17 Web3 tools catalogued and risk-classified — across an index of 43,000+ MCP servers.