Import an image from a public URL into the PostEverywhere media library. The image is fetched server-side, stored, and immediately ready to attach to posts via media_ids. Supported: JPEG, PNG, GIF, WebP, HEIC, HEIF — up to 25 MB. Image-only for now; videos still require the 3-step REST flow (POST...
AI agents use upload_media_from_url to create or update resources in Posteverywhere — usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Posteverywhere environment.
This tool creates and stores new media assets in a system where they can be attached to social media posts. While reversible (via delete_media), uploading arbitrary media from URLs could be misused to flood a media library, create spam assets, or associate inappropriate content with an account.
From the tool's definition Tool description states the image is 'stored' in the media library and becomes 'immediately ready to attach to posts'. The tool 'import[s]' and 'store[s]' media, creating new persistent resources (media_id) that can be used across posts.
Attacks that exploit this kind of access
Import an image from a public URL into the PostEverywhere media library. The image is fetched server-side, stored, and immediately ready to attach to posts via media_ids. Supported: JPEG, PNG, GIF, WebP, HEIC, HEIF — up to 25 MB. Image-only for now; videos still require the 3-step REST flow (POST /v1/media/upload → PUT presigned URL → POST /v1/media/{id}/complete). Returns { media_id, url, content_type, size } — pass media_id directly to create_post. It is categorised as a Write tool in the Posteverywhere MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
Register the Posteverywhere MCP server in PolicyLayer and add a rule for upload_media_from_url: 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 Posteverywhere. Nothing to install.
upload_media_from_url 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 upload_media_from_url 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 upload_media_from_url. 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.
upload_media_from_url is provided by the Posteverywhere MCP server (posteverywhere/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Every MCP server has a record like this.
Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.
Teams ship this data inside their own products. See what a licence covers →