list_optimization_recommendations
Use this when the user asks about optimization, recommendations, insights, savings opportunities, rightsizing, idle resources, security findings, or cost reduction suggestions. Also use this when the user asks 'what insights are available?' or 'show me insights'. This is the primary tool for 'wha...
This record as markdown: /tools/doit/list-optimization-recommendations.md
What list_optimization_recommendations does on Doit
AI agents call list_optimization_recommendations to retrieve information from Doit without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | — | Deprecated: only 0 (first page) is accepted. Use pageToken for continuation. |
easyWin | boolean | — | True selects easy wins; false selects only non-easy-wins; omit for both. |
category | object | — | Filter by one category; a legacy one-element array is accepted. OperationalExcellence/Operational excellence and PerformanceEfficiency/Performance efficiency ar |
pageSize | integer | — | Deprecated alias for maxResults (default 20, max 100); maxResults takes precedence. |
priority | array | — | Filter by priority levels. Possible values: Low, Medium, High. |
provider | string | — | Filter by cloud provider (sent as cloudProvider to the API, e.g. aws, gcp, azure). |
pageToken | string | — | Non-empty opaque cursor from the previous response. Omit for the first page. |
maxResults | integer | — | Results per page, 1–500. Overrides pageSize; defaults to 20 for compatibility. |
searchTerm | string | — | Case-insensitive substring search of insight titles only. |
displayStatus | array | — | Filter by display status. Omitted means all statuses, including dismissed. Possible values: actionable, acknowledged, in progress, optimized, dismissed. |
Parameters from the server's own tool schema.
Why list_optimization_recommendations is rated Low
Even though list_optimization_recommendations only reads data, uncontrolled read access leaks sensitive information and racks up API costs: an agent caught in a retry loop can make thousands of calls a minute without anyone noticing.
Risk signalsHigh parameter count (10 properties)
Attacks that exploit this kind of access
The rule that runs list_optimization_recommendations safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Doit, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For list_optimization_recommendations, this is the rule to start with:
list_optimization_recommendations 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 Doit, apply this rule, and every list_optimization_recommendations call is checked against it from then on.
Questions about list_optimization_recommendations
Use this when the user asks about optimization, recommendations, insights, savings opportunities, rightsizing, idle resources, security findings, or cost reduction suggestions. Also use this when the user asks 'what insights are available?' or 'show me insights'. This is the primary tool for 'what can I optimize?', 'how can I save money?', and 'what insights do I have?' questions. Returns insights ordered within each page by estimated daily savings, not priority. All statuses are included unless filtered, including dismissed. easyWin is derived from easyWinDescription when present, otherwise null. Follow pageToken for more results. Do NOT use this for cost anomalies/spikes (use get_anomalies) or budget tracking (use list_budgets). It is categorised as a Read tool in the Doit MCP Server, which means it retrieves data without modifying state.
list_optimization_recommendations accepts 10 parameters: page, easyWin, category, pageSize, priority, provider, pageToken, maxResults, searchTerm, displayStatus. The full parameter table on this page comes from the server's own tool schema.
Register the Doit MCP server in PolicyLayer and add a rule for list_optimization_recommendations: 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 Doit. Nothing to install.
list_optimization_recommendations 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 list_optimization_recommendations 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 list_optimization_recommendations. 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.
list_optimization_recommendations is provided by the Doit MCP server (@doitintl/doit-mcp-server). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Doit, and thousands of servers like it.
This server
Across the catalogue