Select a database by its number from the browse results
AI agents use select_database_by_number to create or update resources in MCP Data Visualization Server — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your MCP Data Visualization Server environment.
This tool changes the active/selected database context based on a numbered result from a prior browse operation. It modifies state (the current database selection) rather than purely reading data, but does not delete or execute arbitrary code. Severity is low since it only changes a session-level context setting, not data itself.
From the tool's definition Select a database by its number from the browse results
Documented attack patterns abuse exactly the kind of access select_database_by_number gives an agent:
PolicyLayer is an MCP gateway — it sits between your AI agents and MCP Data Visualization Server, and nothing reaches the server without passing your rules. This is the rule we recommend for select_database_by_number:
{
"version": "1",
"default": "deny",
"tools": {
"select_database_by_number": {
"limits": [
{
"counter": "select_database_by_number_rate",
"window": "minute",
"max": 30,
"scope": "grant"
}
]
}
}
} select_database_by_number stays usable, but capped — an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
Free to start. No card required.
Select a database by its number from the browse results. It is categorised as a Write tool in the MCP Data Visualization Server MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the MCP Data Visualization Server MCP server in PolicyLayer and add a rule for select_database_by_number: 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 MCP Data Visualization Server. Nothing to install.
select_database_by_number is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the select_database_by_number 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 select_database_by_number. 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.
select_database_by_number is provided by the MCP Data Visualization Server MCP server (xoniks/mcp-visualization-duckdb). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Start from MCP Data Visualization Server, 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.
28 MCP Data Visualization Server tools catalogued and risk-classified — across an index of 43,000+ MCP servers.