Medium Risk

render_slide

Render a consulting-quality PowerPoint presentation slide from a template. Always synchronous — one call, done. Two paths (both return 200 with pptx_url + preview_url inline, no polling): • template + params → <100ms, $0.03. No AI. Same input = same output. • template + brief → ~2s, $0.05. AI e...

Accepts raw HTML/template content (template); High parameter count (16 properties)

Part of the Slideforge MCP server. Enforce policies on this tool with Intercept, the open-source MCP proxy.

AI agents use render_slide to create or modify resources in Slideforge. 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 render_slide 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 Slideforge.

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

smartdatabrokers-slideforge.yaml
tools:
  render_slide:
    rules:
      - action: allow
        rate_limit:
          max: 30
          window: 60

See the full Slideforge policy for all 13 tools.

Tool Name render_slide
Category Write
Risk Level Medium

View all 13 tools →

Agents calling write-class tools like render_slide 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 render_slide tool do? +

Render a consulting-quality PowerPoint presentation slide from a template. Always synchronous — one call, done. Two paths (both return 200 with pptx_url + preview_url inline, no polling): • template + params → <100ms, $0.03. No AI. Same input = same output. • template + brief → ~2s, $0.05. AI extracts params from description. Set include_pdf=true to also get a pdf_url in the response (+~150ms). Response contains signed download URLs — give these directly to the user. The pptx_url, preview_url, and pdf_url are all direct file download links. Workflow: suggest_template first → if has_good_match, use render_slide. If no template fits, use generate_slide instead.. It is categorised as a Write tool in the Slideforge MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on render_slide? +

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

What risk level is render_slide? +

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

Can I rate-limit render_slide? +

Yes. Add a rate_limit block to the render_slide 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 render_slide completely? +

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

render_slide is provided by the Slideforge MCP server (smartdatabrokers/slideforge). Intercept sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policies on Slideforge

Open source. One binary. Zero dependencies.

npx -y @policylayer/intercept
github.com/policylayer/intercept →
// GET IN TOUCH

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

Message sent.

We'll get back to you soon.