Skip to main content
Glama

upload_media_from_url

Upload an image to LinkedIn by fetching it from a public URL. Returns a digitalmediaAsset URN (urn:li:digitalmediaAsset:…) that can be passed to create_post (single image) or create_multi_photo (multi-photo). Use this instead of upload-media when working as an agent — no binary file upload needed. Use before create_post when the post needs an image; returns the URN create_post expects. For several images, then create_multi_photo.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
image_urlYesPublicly accessible URL of the image to upload.
account_idYesReach id of the LinkedIn account to act on, from list_accounts.
idempotency_keyNoOptional. A key you choose (a UUID is fine) that names this exact call. If you retry with the same key and the same arguments, the first call's result is returned and nothing is done twice on LinkedIn. Reusing a key with different arguments is refused. Keys expire after 24 hours.
media_upload_typeNoLinkedIn media upload type (default: IMAGE_SHARING).IMAGE_SHARING

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urnNourn:li:digitalmediaAsset:… to pass as media_urn

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false. The description adds useful context (no binary upload required, returns a URN for chaining) but omits permissions/auth requirements, rate limits, or what happens on failure for a mutating call.

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?

Front-loads purpose and stays short, but the last two sentences partially restate the create_post routing already given ('Use before create_post... returns the URN create_post expects') and could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With annotations, a full output schema, and 100% parameter coverage, the description's job is workflow routing, which it handles well. Minor gap: no mention of permission/auth needs for a write operation.

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

Parameters3/5

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

Schema description coverage is 100%, so all four parameters are already documented in the schema. The description only alludes to the URL input ('fetching it from a public URL') and adds no syntax or constraint detail beyond what the schema states. Baseline 3 is correct.

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?

States a specific verb+resource+mechanism: upload an image to LinkedIn by fetching it from a public URL. Names the return value (digitalmediaAsset URN) and distinguishes itself from the sibling upload-media tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says when to use it ('instead of upload-media when working as an agent — no binary file upload needed') and when to reach for the downstream siblings (create_post for single image, create_multi_photo for several). Routing is fully spelled out.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources