bannerbear
Server Details
Generate images, videos, and screenshots from your Bannerbear templates via AI.
- Status
- Unhealthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.1/5 across 15 of 15 tools scored.
Each tool targets a distinct resource and action (create, get, list) across images, videos, collections, screenshots, templates, template sets, effects, fonts, and account. No overlapping purposes.
All tools follow a consistent verb_noun pattern with lowercase and underscores, preceded by 'bannerbear_' prefixes, making them predictable and easy to navigate.
With 15 tools, the server covers creation, retrieval, and listing for all major resource types without being bloated or sparse. The count is appropriate for a media generation API.
The tool surface covers the full lifecycle implied by the API: creating resources, polling async results, listing, and retrieving metadata. Missing update/delete are not needed for generated assets.
Available Tools
15 toolsbannerbear_create_collectionCreate collectionADestructiveInspect
Generate a collection of images from a template set (additive; CONSUMES API quota). Async: returns a pending collection whose uid you poll with bannerbear_get_collection (image_urls map populates on completion). API: POST /v2/collections.
| Name | Required | Description | Default |
|---|---|---|---|
| metadata | No | Arbitrary metadata string echoed back on the object. | |
| webhook_url | No | URL Bannerbear will POST the finished collection to when done. | |
| template_set | Yes | Template set uid to render. | |
| modifications | No | Layer overrides applied to the template. Array of objects, one per layer, each keyed by `name` (the layer name) plus the props to set, e.g. { name: "title", text: "Hello", color: "#FF0000" } or { name: "photo", image_url: "https://..." }. Only include layers you want to change. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses quota consumption, additive nature, and async behavior (pending collection, polling). Annotations already mark destructiveHint=true; description adds context beyond annotations, no contradictions.
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?
Two concise sentences, front-loaded with key info (verb, resource, quota, async, polling). No filler words.
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?
Explains async lifecycle and polling mechanism despite no output schema. Parameter details are in schema. With sibling tools covering polling and other actions, description is sufficiently complete for a creation tool.
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 description doesn't need to detail parameters. Description does not add new info on parameters beyond the schema, but baseline 3 is appropriate given 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?
Clearly states 'Generate a collection of images from a template set', specifying verb, resource, and scope. Distinguishes from siblings like bannerbear_create_image (single image) and bannerbear_get_collection (polling) by mentioning async return.
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?
Provides context: tool is for creating a batch from a template set, consumes API quota, and is async requiring polling via bannerbear_get_collection. Implicitly contrasts with single-image creation, but lacks explicit 'when not to use' or alternative selection guidance beyond polling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_create_imageCreate imageADestructiveInspect
Generate an image from a template (additive; CONSUMES API quota). Async by default: returns a pending image whose uid you poll with bannerbear_get_image. Set synchronous:true to block and receive the finished image (image_url populated) via the sync host. API: POST /v2/images.
| Name | Required | Description | Default |
|---|---|---|---|
| metadata | No | Arbitrary metadata string echoed back on the object. | |
| template | Yes | Template uid to render. | |
| render_pdf | No | Also render a PDF version of the image. | |
| synchronous | No | When true, POST to the sync host and wait for the completed image. Default false (202 pending). | |
| transparent | No | Render with a transparent background (PNG). | |
| webhook_url | No | URL Bannerbear will POST the finished image to when done. | |
| modifications | No | Layer overrides applied to the template. Array of objects, one per layer, each keyed by `name` (the layer name) plus the props to set, e.g. { name: "title", text: "Hello", color: "#FF0000" } or { name: "photo", image_url: "https://..." }. Only include layers you want to change. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only provide destructiveHint:true. The description adds significant behavioral context: additive API consumption, async default returning a pending object, synchronous blocking behavior, and the API endpoint. This goes well beyond 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?
The description is very concise with three sentences, front-loading key information (generate, additive, async, sync option). No unnecessary words.
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?
Given 100% schema coverage and annotations present, the description is complete. It covers async/sync, API quota, polling, and the endpoint. Without an output schema, it still adequately informs the user about return values (pending vs finished image).
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% with good per-parameter descriptions. The description does not add further meaning beyond the schema, so baseline 3 is appropriate.
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 clearly states the tool generates an image from a template and specifies the API endpoint. It distinguishes itself from sibling tools by explaining the async/sync behavior and the need to poll with bannerbear_get_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 description explains when to use synchronous vs asynchronous mode, and mentions polling via bannerbear_get_image. It provides clear context but does not explicitly state when not to use this tool or list alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_create_screenshotCreate screenshotADestructiveInspect
Capture a screenshot of a web page (additive; CONSUMES API quota). Async by default: returns a pending screenshot to poll. Set synchronous:true to block and receive the finished screenshot via the sync host. API: POST /v2/screenshots.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public URL of the web page to screenshot. | |
| width | No | Viewport width in pixels. | |
| height | No | Viewport height in pixels. | |
| mobile | No | Render with a mobile viewport. | |
| synchronous | No | When true, POST to the sync host and wait for the completed screenshot. Default false (202 pending). | |
| webhook_url | No | URL Bannerbear will POST the finished screenshot to when done. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond the `destructiveHint` annotation by noting that the tool consumes API quota and is asynchronous by default. It explains the return behavior (pending vs finished screenshot) and mentions the API endpoint, providing good transparency.
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?
The description is three sentences, front-loaded with the main purpose, and each sentence provides critical information without redundancy. It is concise and well-structured.
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?
Given the lack of an output schema, the description covers the return types (pending vs finished screenshot) and the API endpoint. It does not detail the screenshot object structure, but that is likely acceptable for a capture tool. The information is sufficient for most use cases.
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% with parameter descriptions already present. The description adds minimal extra meaning beyond the schema, such as the context for `synchronous` (async by default) and the word 'Public' for URL, but does not significantly enhance understanding of each parameter.
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 clearly states 'Capture a screenshot of a web page', which is a specific verb+resource combination. The tool name and title reinforce this, and it is distinct from sibling tools which deal with collections, images, videos, etc.
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 explains the default async behavior and when to set synchronous=true for blocking. It does not explicitly state when not to use the tool or compare to alternatives, but the guidance on async vs sync is clear and useful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_create_videoCreate videoADestructiveInspect
Generate a video from a video template (additive; CONSUMES API quota). Async: returns a pending video whose uid you poll with bannerbear_get_video (video_url populates on completion). API: POST /v2/videos.
| Name | Required | Description | Default |
|---|---|---|---|
| metadata | No | Arbitrary metadata string echoed back on the object. | |
| webhook_url | No | URL Bannerbear will POST the finished video to when done. | |
| modifications | No | Layer overrides applied to the template. Array of objects, one per layer, each keyed by `name` (the layer name) plus the props to set, e.g. { name: "title", text: "Hello", color: "#FF0000" } or { name: "photo", image_url: "https://..." }. Only include layers you want to change. | |
| video_template | Yes | Video template uid to render. | |
| input_media_url | No | URL of the source media (e.g. an audio/video file) to build from. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly discloses additive nature, quota consumption, and async behavior beyond the destructiveHint annotation. No contradiction with annotations; provides essential behavioral context.
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?
Two sentences, front-loaded with purpose and key traits (additive, async, polling). No wasted words; every sentence adds value.
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?
Covers async pattern, polling, quota impact, and API endpoint for a tool with moderate complexity. Lacks error handling details but sufficient given no output schema.
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 has 100% coverage, so baseline is 3. Description adds minimal new semantics beyond schema (e.g., mentions 'modifications' are layer overrides). Does not substantially enhance understanding of parameters.
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?
Clearly states 'Generate a video from a video template' with specific verb and resource. Distinguishes from sibling tools like bannerbear_create_image by noting async behavior and polling with bannerbear_get_video.
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?
Provides clear context: additive operation that consumes quota, async with polling. Tells user to poll with bannerbear_get_video for completion. No explicit exclusions but sibling tools suggest alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_accountGet accountARead-onlyInspect
Get account details and usage: api_usage, api_quota, and paid_plan_name. API: GET /v2/account.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the API endpoint and response fields, but annotations already include readOnlyHint=true. No additional behavioral traits beyond the read-only nature are disclosed.
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?
The description is short, clear, and in two sentences with no extraneous information. The key purpose and specific response fields are front-loaded.
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?
Given no input parameters and no output schema, the description adequately covers what the tool does and what it returns by listing the three fields. No additional context is needed for this simple read operation.
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?
With zero parameters and 100% schema coverage from the input schema, the description does not need to add parameter details. Baseline 4 is appropriate as there is no missing parameter information.
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 clearly states the tool retrieves account details and lists specific fields (api_usage, api_quota, paid_plan_name). It distinguishes from sibling tools like bannerbear_get_template which focus on other resources.
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 does not explicitly state when to use this tool versus alternatives, but given that it's the only account-related tool among siblings, context is implied. No exclusions or alternative recommendations are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_collectionGet collectionARead-onlyInspect
Get a single collection — poll this to check an async render (status: pending | completed | failed; image_urls map populates on completion). API: GET /v2/collections/{uid}.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Collection uid (from a create_collection response). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the readOnlyHint annotation, such as the polling purpose and the status values. No contradiction with 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?
The description is two sentences, front-loading the purpose and polling use case, followed by the API endpoint. No wasted words.
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?
Despite no output schema, the description explains the return behavior (status, image_urls map), making it complete for this simple read tool.
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?
The schema describes the 'uid' parameter as coming from a create_collection response, which is reinforced in the description. With 100% schema coverage, the description adds clarity about the parameter's origin.
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 clearly states the verb 'Get', the resource 'collection', and the specific use case of polling for an async render. It distinguishes itself from sibling tools like 'bannerbear_create_collection' and other get tools.
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 explicitly says 'poll this to check an async render', indicating when to use it. It does not explicitly state when not to use it, but the context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_imageGet imageARead-onlyInspect
Get a single generated image — poll this to check an async render (status: pending | completed | failed; image_url populates on completion). API: GET /v2/images/{uid}.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Image uid (from a create_image response). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, which the description reinforces. It adds details about async behavior (status: pending/completed/failed) and that image_url populates on completion, going beyond annotations. No contradictions.
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?
Two sentences, no fluff. First sentence defines purpose and usage, second gives API endpoint. Every sentence earns its place.
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 get tool with one parameter and no output schema, the description is fully adequate. It covers purpose, usage, and expected result.
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 baseline is 3. Description mentions uid implicitly via 'create_image response' but does not add new meaning beyond the schema's description.
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 clearly states 'Get a single generated image' and specifies polling for async render status. It distinguishes from siblings like bannerbear_list_images (list) and bannerbear_create_image (create).
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 explicitly says 'poll this to check an async render' and lists status values, providing clear usage context. It does not explicitly exclude alternatives but implies when to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_templateGet templateARead-onlyInspect
Get a single template incl. its available_modifications (the layers you can override when generating). API: GET /v2/templates/{uid}.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Template uid. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds behavioral context by mentioning that the response includes 'available_modifications', which is a key detail beyond a simple read operation.
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?
The description is two sentences, concise and front-loaded. First sentence states purpose, second provides API reference. No superfluous content.
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 single-parameter read tool, the description covers the main purpose and key output detail (available_modifications). It omits error handling or rate limits, but annotations partly compensate.
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 has 100% coverage for the single parameter 'uid' with a description. The tool description does not add additional semantic information about the parameter beyond what the schema provides.
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 clearly states 'Get a single template' and specifies it includes 'available_modifications', distinguishing it from listing tools. The verb 'Get' and resource 'template' are specific.
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 use when needing a single template by UID but does not provide explicit when-to-use or when-not-to-use guidance, nor contrasts with sibling tools like list_templates.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_template_setGet template setARead-onlyInspect
Get a single template set and the templates it contains. API: GET /v2/template_sets/{uid}.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Template set uid. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true. The description adds that the tool returns templates within the set, but does not disclose additional behavioral traits (e.g., error behavior, rate limits). No contradiction.
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?
Two concise sentences: first states purpose, second provides the API method. No redundant information; every word adds value.
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 get operation with one required parameter and readOnlyHint annotation, the description is mostly adequate. It could be improved by mentioning the return format (e.g., 'returns the template set with its templates'), but the current version covers the essentials.
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%, and the description implicitly references the uid parameter but adds no new meaning beyond the schema's 'Template set uid.' Description does not enhance parameter understanding.
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 clearly states the action ('Get') and the resource ('a single template set and the templates it contains'), differentiating it from sibling tools like list_template_sets and get_template.
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 provides the API endpoint but no explicit guidance on when to use this tool versus alternatives (e.g., list_template_sets). Usage context is implied but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_get_videoGet videoARead-onlyInspect
Get a single generated video — poll this to check an async render (status: pending | completed | failed; video_url populates on completion). API: GET /v2/videos/{uid}.
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Video uid (from a create_video response). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It describes the async polling behavior, statuses (pending, completed, failed), and that video_url populates on completion, adding value beyond the readOnlyHint annotation. No contradictions.
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?
The description is two efficient sentences, front-loaded with purpose. No unnecessary words.
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 get parameter with no output schema, the description fully covers the needed info: what, when, and status expectations.
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?
The sole parameter uid is fully described in the schema as 'Video uid (from a create_video response).' The description adds no extra meaning, but schema coverage is 100%, so baseline 3 is appropriate.
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 clearly states it retrieves a single generated video and specifies it is for polling an async render, distinguishing it from sibling tools that create or list videos.
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?
It explicitly says to poll this to check an async render, giving clear context for use. However, it does not list alternatives or when not to use it, though the purpose is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_list_effectsList effectsARead-onlyInspect
List the image effects available for use in template modifications. API: GET /v2/effects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true, and the description adds the API endpoint but no further behavioral context such as rate limits or output format.
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?
Two sentences, front-loaded with purpose, no wasted words. The API endpoint is an additional detail that adds value concisely.
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 parameterless list tool with annotations indicating read-only, the description is sufficiently complete. It could mention the return type but is adequate as is.
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?
There are no parameters, so the schema coverage is 100%. The description does not need to add parameter information, and it correctly omits it.
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 clearly states the verb 'List', the resource 'image effects', and the context 'available for use in template modifications', making it distinct from sibling tools like bannerbear_list_fonts.
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 provides no guidance on when to use this tool versus alternatives such as bannerbear_list_fonts or bannerbear_list_images, nor does it specify when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_list_fontsList fontsARead-onlyInspect
List the fonts available for use in template modifications. API: GET /v2/fonts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description confirms it's a GET request but adds no additional behavioral details beyond the API endpoint. For a simple read-only tool, this is adequate but not exceptional.
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?
Two concise sentences with no redundant information. Crucial details (purpose, API endpoint) are front-loaded and sufficient.
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?
Given no parameters, no output schema, and a straightforward purpose, the description covers all necessary context. The API endpoint adds useful external reference.
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?
No parameters exist, so schema coverage is 100%. The description adds no parameter information, which is appropriate since none are needed. Baseline of 4 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 clearly states the tool lists fonts available for use in template modifications, using a specific verb and resource. It differentiates well from sibling tools like list_effects or list_images.
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?
No explicit guidance on when to use this tool versus alternatives. The purpose is implied by the resource name, but no context is given for when-not to use or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_list_imagesList imagesARead-onlyInspect
List generated images in the project (paginated). API: GET /v2/images.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is clear. The description adds that results are paginated, which is a key behavioral trait not fully captured by annotations. No contradictions.
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?
Two short sentences that are front-loaded with the core purpose. No unnecessary words. Every sentence adds value.
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?
Given low complexity (1 optional param, good annotations, no output schema), the description is adequate. It could briefly note that it lists all generated images (project scope implied but not explicit). Still, it covers the essential behavior.
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 schema fully documents the single parameter 'page'. The description mentions 'paginated' but adds no additional meaning beyond the schema's description of page number. Baseline 3 is appropriate.
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 clearly states 'List generated images in the project (paginated)' with a specific verb and resource. It distinguishes from sibling tools like 'bannerbear_get_image' (single) and 'bannerbear_create_image' (create) by implying a listing scope.
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?
No explicit when-to-use or when-not-to-use guidance is provided. The description does not differentiate from other list tools like 'bannerbear_list_effects' or explain when pagination is needed. The context from sibling names helps slightly, but the description itself lacks usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_list_templatesList templatesARead-onlyInspect
List the templates in the project. Filter/paginate with page, tag, name, and limit. API: GET /v2/templates.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Filter templates by tag. | |
| name | No | Filter templates by name (substring match). | |
| page | No | Page number for pagination. | |
| limit | No | Number of templates per page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already include readOnlyHint: true, so the description's mention of 'List' and the GET endpoint adds no new behavioral insights. The description does not disclose additional traits like pagination limits or response format, which are not critical here but could be helpful. Since annotations carry the safety profile, a score of 3 is appropriate.
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?
The description is two sentences long, front-loading the core purpose. Every word is essential: 'List the templates in the project. Filter/paginate with page, tag, name, and limit. API: GET /v2/templates.' No filler or redundancy.
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?
The tool has no output schema, but the description covers input completely. For a simple list operation with well-documented parameters, the description is adequate. It could mention that the output is a list of template objects, but the verb 'List' implies a collection. Given low complexity, a score of 4 is fair.
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 the schema already documents each parameter clearly. The description rephrases the filtering and pagination capability but adds no additional semantics (e.g., default values, order of filters). The baseline of 3 is justified because the description provides no extra meaning beyond the schema.
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 clearly states the action 'List' and the resource 'templates in the project.' It distinguishes from sibling tools like 'bannerbear_get_template' (single) and 'bannerbear_list_template_sets' (different entity). The verb and resource are specific, leaving no ambiguity.
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 clearly indicates that this tool lists templates with optional filtering and pagination. While it does not explicitly state when to avoid or use alternatives, the context is clear given the sibling tool names (e.g., get_template for a specific template). It could benefit from a note on when to use get_template instead, but the current text is sufficient for a straightforward list operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bannerbear_list_template_setsList template setsARead-onlyInspect
List the template sets in the project (used by collections). API: GET /v2/template_sets.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint=true. The description adds the API endpoint (GET /v2/template_sets) and the context 'used by collections', which gives additional behavioral insight beyond 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?
Extremely concise: one sentence plus API reference. Every element is purposeful with no waste.
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?
Given the tool's simplicity (list with one optional parameter, no output schema), the description is adequate. It could mention that it returns an array of template sets, but the API endpoint reference partly compensates.
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% with a clear description for the 'page' parameter. The description does not add any additional meaning beyond what the schema already provides, so baseline 3 is appropriate.
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 clearly states the verb 'List' and resource 'template sets', and adds context that it is 'used by collections', distinguishing it from siblings like get_template_set (single item) and list_templates (different resource).
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 usage for listing template sets in the project and mentions relation to collections, but does not explicitly say when to use this tool versus alternatives like get_template_set. No exclusions or when-not guidance provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityCmaintenanceGenerate production-ready images from text prompts. AI-powered design API with 50+ templates for social posts, banners, OG images, and more.815MIT
- AlicenseAqualityCmaintenanceGenerates blog and social media images using Google's Gemini AI with pre-configured platform presets for Ghost, Medium, Instagram, Twitter, LinkedIn, YouTube, and more.213MIT
- Alicense-qualityCmaintenanceGenerates logos, social media posts, app-store screenshots, comic panels, and visual-novel assets from natural-language prompts using 119 templates.MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to programmatically generate images, GIFs, and PDFs from HTML/CSS or web screenshots using the Pictify API. It also supports template management, batch rendering jobs, and A/B test experiment controls.31210MIT