Skip to main content
Glama
prashantgupta123

AWS FinOps MCP Server

find_underutilized_ec2_instances

Identify EC2 instances with low CPU and memory utilization (≤20%) to optimize AWS costs by finding underused resources for potential rightsizing or termination.

Instructions

Find EC2 instances with low CPU and memory utilization (≤20%).

Args:
    region_name: AWS region name
    period: Lookback period in days (default: 30)
    max_results: Maximum results to return (default: 100)
    profile_name: AWS profile name (optional)
    role_arn: IAM role ARN to assume (optional)
    access_key: AWS access key ID (optional)
    secret_access_key: AWS secret access key (optional)
    session_token: AWS session token for temporary credentials (optional)

Returns:
    Dictionary with underutilized EC2 instances

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
region_nameNous-east-1
periodNo
max_resultsNo
profile_nameNo
role_arnNo
access_keyNo
secret_access_keyNo
session_tokenNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior2/5

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

No annotations are provided, so the description must fully disclose behavioral traits. It states the tool 'finds' instances and returns a dictionary, implying a read-only operation, but does not clarify authentication requirements, rate limits, or data sources (e.g., CloudWatch metrics). The mention of AWS credentials parameters hints at authentication needs, but explicit behavioral details like permissions or side effects are missing, leaving gaps for a tool with 8 parameters.

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 well-structured and appropriately sized. It starts with the core purpose, followed by a clear 'Args' section listing parameters with brief explanations, and ends with return information. Every sentence adds value, though the parameter list is lengthy due to the tool's complexity; it remains front-loaded and efficient without unnecessary verbosity.

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?

Given the tool's complexity (8 parameters, no annotations, but with an output schema), the description is partially complete. It covers the purpose and parameters well, and the output schema handles return values, but it lacks behavioral context like authentication details or performance considerations. For a tool with many parameters and no annotations, more guidance on usage and constraints would enhance completeness.

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

Parameters5/5

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

The description adds significant semantic value beyond the input schema, which has 0% description coverage. It explains each parameter's purpose (e.g., 'AWS region name', 'Lookback period in days', 'AWS profile name'), including defaults and optionality. This compensates fully for the schema's lack of descriptions, making parameter meanings clear and actionable for the agent.

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 purpose: 'Find EC2 instances with low CPU and memory utilization (≤20%).' It specifies the verb ('find'), resource ('EC2 instances'), and criteria ('low CPU and memory utilization ≤20%'). This distinguishes it from sibling tools like 'find_overutilized_ec2_instances' and other analysis tools, making the purpose 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. While it mentions the criteria (low CPU/memory ≤20%), it does not specify use cases, prerequisites, or exclusions. Given the many sibling tools for cost optimization and resource analysis, the lack of contextual guidance leaves the agent to infer usage scenarios independently.

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

Install Server

Other Tools

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/prashantgupta123/aws-pillar-mcp-server'

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