Medium Risk

upload_to_s3

Upload Python code content directly to an S3 bucket using putObject. This tool uploads Python code content directly to an S3 bucket, commonly used for storing Glue job scripts, EMR step scripts, or other data processing code. The uploaded file can be referenced by data processing services. ## R...

Part of the Amazon Data Processing MCP Server MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.

AI agents use upload_to_s3 to create or modify resources in Amazon Data Processing MCP Server. Write operations carry medium risk because an autonomous agent could trigger bulk unintended modifications. Rate limits prevent a single agent session from making hundreds of changes in rapid succession. Argument validation ensures the agent passes expected values.

Without a policy, an AI agent could call upload_to_s3 repeatedly, creating or modifying resources faster than any human could review. Intercept's rate limiting ensures write operations happen at a controlled pace, and argument validation catches malformed or unexpected inputs before they reach Amazon Data Processing MCP Server.

Write tools can modify data. A rate limit prevents runaway bulk operations from AI agents.

amazon-data-processing-mcp-server.yaml
tools:
  upload_to_s3:
    rules:
      - action: allow
        rate_limit:
          max: 30
          window: 60

See the full Amazon Data Processing MCP Server policy for all 36 tools.

Tool Name upload_to_s3
Category Write
Risk Level Medium

View all 36 tools →

Agents calling write-class tools like upload_to_s3 have been implicated in these attack patterns. Read the full case and prevention policy for each:

Browse the full MCP Attack Database →

Other tools in the Write risk category across the catalogue. The same policy patterns (rate-limit, validate) apply to each.

What does the upload_to_s3 tool do? +

Upload Python code content directly to an S3 bucket using putObject. This tool uploads Python code content directly to an S3 bucket, commonly used for storing Glue job scripts, EMR step scripts, or other data processing code. The uploaded file can be referenced by data processing services. ## Requirements - The server must be run with the `--allow-write` flag - Valid AWS credentials with permissions to write to the specified S3 bucket - The bucket must exist and be accessible ## Usage Tips - Use descriptive S3 keys that include version information or timestamps - Store scripts in organized folder structures (e.g., glue-jobs/, emr-steps/) - Consider using versioning on the S3 bucket for script history - The returned S3 URI can be used directly in Glue job configurations Args: ctx: The MCP context code_content: String containing Python code to upload bucket_name: Name of the S3 bucket s3_key: S3 object key (path within the bucket) make_public: Whether to make the file publicly accessible Returns: CallToolResult: Information about the uploaded file. It is categorised as a Write tool in the Amazon Data Processing MCP Server MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on upload_to_s3? +

Add a rule in your Intercept YAML policy under the tools section for upload_to_s3. You can allow, deny, rate-limit, or validate arguments. Then run Intercept as a proxy in front of the Amazon Data Processing MCP Server MCP server.

What risk level is upload_to_s3? +

upload_to_s3 is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit upload_to_s3? +

Yes. Add a rate_limit block to the upload_to_s3 rule in your Intercept 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.

How do I block upload_to_s3 completely? +

Set action: deny in the Intercept policy for upload_to_s3. 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.

What MCP server provides upload_to_s3? +

upload_to_s3 is provided by the Amazon Data Processing MCP Server MCP server (awslabs.aws-dataprocessing-mcp-server). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Let agents act without letting them run wild.

Deterministic policy on every MCP tool call. Per-identity grants. Full audit log.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.