Bannerbear MCP by usefulapi
Server Details
Generate images, videos, and screenshots from your Bannerbear templates via AI.
- Status
- Healthy
- Uptime
- 77.5% over 56 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
TDQS
Scored across 15 tools
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 collectionDestructiveInspect
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. |
bannerbear_create_imageCreate imageDestructiveInspect
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. |
bannerbear_create_screenshotCreate screenshotDestructiveInspect
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. |
bannerbear_create_videoCreate videoDestructiveInspect
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. |
bannerbear_get_accountGet accountRead-onlyInspect
Get account details and usage: api_usage, api_quota, and paid_plan_name. API: GET /v2/account.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
bannerbear_get_collectionGet collectionRead-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). |
bannerbear_get_imageGet imageRead-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). |
bannerbear_get_templateGet templateRead-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. |
bannerbear_get_template_setGet template setRead-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. |
bannerbear_get_videoGet videoRead-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). |
bannerbear_list_effectsList effectsRead-onlyInspect
List the image effects available for use in template modifications. API: GET /v2/effects.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
bannerbear_list_fontsList fontsRead-onlyInspect
List the fonts available for use in template modifications. API: GET /v2/fonts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
bannerbear_list_imagesList imagesRead-onlyInspect
List generated images in the project (paginated). API: GET /v2/images.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number for pagination. |
bannerbear_list_templatesList templatesRead-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. |
bannerbear_list_template_setsList template setsRead-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 Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
15 tool updates
- Changed
bannerbear_create_collection1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_create_image1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_create_screenshot1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_create_video1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_account1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_collection1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_image1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_template1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_template_set1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_get_video1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_list_effects1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_list_fonts1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_list_images1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_list_template_sets1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
- Changed
bannerbear_list_templates1 field changed- changed
Input schema / $schemaPrevious value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
15 tool updates
- First observed
bannerbear_create_collection - First observed
bannerbear_create_image - First observed
bannerbear_create_screenshot - First observed
bannerbear_create_video - First observed
bannerbear_get_account - First observed
bannerbear_get_collection - First observed
bannerbear_get_image - First observed
bannerbear_get_template - First observed
bannerbear_get_template_set - First observed
bannerbear_get_video - First observed
bannerbear_list_effects - First observed
bannerbear_list_fonts - First observed
bannerbear_list_images - First observed
bannerbear_list_template_sets - First observed
bannerbear_list_templates
Related MCP Connectors
Generate images, GIFs, videos, and PDFs from HTML, URLs, or templates — from your AI agent.
Generate on-brand images from your AI agent: design, edit, and render templates over MCP.
Generate branded images at scale: design templates and render them to PNGs by prompt.
Run GenflowAI templates and AI creative workflows for ecommerce visuals, UGC ads, and videos.
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.810 npmMIT

Templated MCP Serverofficial
AlicenseBqualityBmaintenanceEnables AI assistants to generate images, videos, and PDFs from templates, manage templates, upload assets, organize folders, and access account usage through natural language.2540 npm3MIT- 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.213 npmMIT
- AlicenseNot gradedqualityCmaintenanceGenerates logos, social media posts, app-store screenshots, comic panels, and visual-novel assets from natural-language prompts using 119 templates.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.