BasePic
Server Details
Upload, edit and share images by link: free image hosting for AI agents, no API key.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 4 tools
Each tool maps to a distinct CRUD operation on an image (upload, get, edit, delete) with no overlap. The descriptions clearly delineate the boundaries between creating, reading, modifying, and removing images.
All four tools follow a strict verb_noun snake_case pattern: delete_image, edit_image, get_image, upload_image. The convention is perfectly uniform and predictable.
Four tools is well-scoped for a focused image-hosting service, and each earns its place in the CRUD lifecycle. Nothing feels redundant or missing at the surface level.
Full create/read/update/delete coverage is present, so core workflows have no dead ends. The only minor gap is the absence of a list/browse operation for the user's own uploaded images, though the private-by-link model may make that intentional.
Available Tools
4 toolsdelete_imageDelete imageADestructiveIdempotentInspect
Delete an image from BasePic. Needs the delete_key returned when it was uploaded or created by edit_image. Its links stop working.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Image id returned by upload_image or edit_image (e.g. "vqSvesFU") | |
| delete_key | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructive=true, idempotent=true, and readOnly=false, so the safety profile is covered structurally. The description adds genuine value beyond them by disclosing the consequence ("Its links stop working") and the credential dependency on delete_key, which the annotations do not convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the action, followed by the prerequisite and the consequence. Every sentence carries load and none is redundant with the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter, no-output-schema tool whose annotations already cover safety semantics, the description supplies the prerequisite source and the visible effect of deletion. Nothing an agent needs to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%: `id` is documented but `delete_key` has no schema description. The description compensates by explaining where delete_key comes from (returned at upload or by edit_image), turning an opaque required string into a meaningful prerequisite.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ("Delete an image from BasePic") with a clear scope. It is trivially distinguishable from the siblings edit_image, get_image, and upload_image by its destructive action. No agent would confuse this with a read or edit operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when the tool applies (you have an image to remove) and states the key prerequisite: a delete_key from upload_image or edit_image is required. However, it names no explicit alternatives and gives no when-not guidance, so usage is largely inferred from the required parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_imageEdit imageAInspect
Edit an uploaded image: rotate, flip, crop (pixels or aspect ratio), resize (width/height, percent, megapixels), grayscale (black & white), sepia, brightness, contrast, warm, cool, invert, blur, sharpen — applied in order. Optionally change the format (jpeg/png/webp) or make the file at most max_kb kilobytes. Creates a NEW image with its own page_url, image_url and download_url; the original stays unchanged.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Image id returned by upload_image or edit_image (e.g. "vqSvesFU") | |
| format | No | ||
| max_kb | No | Largest file size in KB (jpeg/webp) | |
| quality | No | ||
| filename | No | ||
| operations | No | Example: [{"op":"rotate","degrees":90},{"op":"resize","width":1080},{"op":"grayscale"}] | |
| return_preview | No | Also return a small preview of the image so you can look at it (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety hints (readOnlyHint=false, destructiveHint=false, idempotentHint=false, openWorldHint=false), and the description adds real behavior beyond them: operations are 'applied in order', the result is a brand-new image with its own page_url/image_url/download_url, and the original is preserved. It does not discuss failure modes, auth, or what happens with invalid operations, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core verb and resource, then the operation inventory, then the output/non-destructiveness fact. The long operation enumeration is dense but each item maps to a real capability; nothing is bloated or redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly explains the return artifacts (page_url, image_url, download_url) and the non-destructive write semantics, which is exactly what an agent needs here. Gaps remain for the quality, filename, and return_preview parameters, and for how format interacts with max_kb.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 57%, and the description compensates by grouping operations by intent (rotate, flip, crop by pixels or aspect ratio, resize by width/height/percent/megapixels, plus the filter list) and by noting the optional format and max_kb behaviors. It is silent on the quality, filename, and return_preview parameters, so it adds meaning but not complete coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (edit) and resource (an uploaded image) and enumerates the concrete operation set the tool supports, so an agent knows exactly what transformations are available. It also implicitly separates itself from the siblings by stating the original stays unchanged and a NEW image is created, distinguishing it from delete_image and from a fresh upload_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Edit an uploaded image' plus the id schema description imply the prerequisite (an id from upload_image or edit_image), but the description never says when to prefer this over re-uploading or over get_image. No explicit alternatives or when-not conditions are given, so usage is inferred rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_imageGet imageARead-onlyInspect
Get the links and details (size, dimensions, type) of an image on BasePic by its id.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Image id returned by upload_image or edit_image (e.g. "vqSvesFU") | |
| return_preview | No | Also return a small preview of the image so you can look at it (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds genuine value by enumerating the returned details, but says nothing about failure behavior (e.g. invalid or unknown id) or any auth requirements. With annotations doing the heavy lifting, this is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with the resource and the returned fields front-loaded; every clause carries information and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read with no output schema, the description covers the essentials by naming the returned fields. It falls short of complete only in omitting error/edge-case behavior for an unknown id.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both 'id' and 'return_preview' are already documented, including an example value and the default for return_preview. The description adds no parameter-level meaning beyond what the schema provides, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Get') and resource ('image on BasePic by its id') and enumerates what is returned (links, size, dimensions, type), so the agent knows exactly what the call produces. It does not explicitly contrast itself with the write-oriented siblings (upload_image, edit_image, delete_image), which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the phrase 'by its id' and the id description ('returned by upload_image or edit_image') signal this is the retrieval step after an upload or edit. There is no explicit when-to-use statement, no note about when not to call it, and no named alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
upload_imageUpload imageAInspect
Upload an image to BasePic and get links: page_url (short link to share), image_url (direct image) and download_url. Give either a public "url" (an image, or a post on X/Instagram/Facebook) or "image_base64". Returns an id for edit_image and a delete_key. Images up to 50 MB. The image is private: only people with the link can see it.
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | Public https link to the image | |
| filename | No | Optional file name, e.g. "beach.jpg" | |
| image_base64 | No | The image as base64 (a data: URL works too) | |
| return_preview | No | Also return a small preview of the image so you can look at it (default false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover readOnly/destructive/openWorld flags; the description adds genuinely new behavioral facts: 50 MB size ceiling, that the image is unlisted (only link-holders can view), and that a delete_key is issued. These are the operational details an agent needs and cannot get from the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four tight sentences, front-loaded with the purpose and outputs before the input rule, size limit, and privacy note. Nothing is repetitive: each sentence adds capability, constraint, or behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description fully covers return values (three URLs, id, delete_key), the either/or input requirement despite zero required parameters, size limits, and privacy semantics. An agent can invoke and reason about the result without further lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description meaningfully extends the 'url' parameter by clarifying it can be an image link *or* a post on X/Instagram/Facebook, which the schema does not say. It is silent on filename and return_preview, keeping it from a 5.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Upload an image to BasePic') and immediately names the concrete artifacts returned (page_url, image_url, download_url), so the agent knows exactly what this produces. It also ties itself to the sibling edit_image by noting the returned id, distinguishing it from get_image/delete_image.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear selection rule for inputs ('Give either a public "url" ... or "image_base64"') and states the context (50 MB cap, unlisted/private results). It does not spell out when to prefer this over edit_image beyond implying the upload→edit flow, and there are no explicit exclusions, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
delete_image - First observed
edit_image - First observed
get_image - First observed
upload_image
Related MCP Connectors
Agent-first image hosting — upload images and get instant CDN URLs.
Temporary video hosting for AI agents with shareable human-viewing links.
Upload, delete, and manage images on BeeIMG with albums, folders, privacy controls, and API access.
File uploads for AI agents. Upload, list, and manage files. No signup required.
Related MCP Servers
FlicenseNot gradedqualityDmaintenanceFile uploads for AI agents. Upload, list, and manage files from AI coding assistants like Claude, Cursor, Windsurf, and VS Code Copilot with no signup required.1-
YourImageShareofficial
AlicenseAqualityAmaintenanceUpload, list, and delete files on YourImageShare (free image & video hosting, 200MB limit, no account required) from Claude, ChatGPT, or any MCP-compatible agent.3209 npm1MIT- AlicenseNot gradedqualityDmaintenanceHosted, SSRF-safe, cached screenshots and Open Graph images for AI agents - no headless Chrome to run.20 npmMIT
- AlicenseAqualityCmaintenanceInstant web hosting for AI agents. Publish a live site in one call, no account needed.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.