Photo mosaic maker and AI photo collage maker: turn your own photos into a mosaic or a collage.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Returns the status and the watermarked preview of a collage made with make_shape_collage, by its id (clg_...). Use when make_shape_collage answered status "processing", or to show the collage again.
The id returned by make_shape_collage.
Returns the status and the watermarked preview of a collage made with make_shape_collage, by its id (clg_...). Use when make_shape_collage answered status "processing", or to show the collage again.
| Argument | Type | Description |
|---|---|---|
| id* | string | The id returned by make_shape_collage. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"pattern": "^clg_[A-Za-z0-9]{12}$",
"description": "The id returned by make_shape_collage."
}
},
"additionalProperties": false
}Shows the menu of Collager.ai photo collages with a real example: the shapes make_shape_collage can draw (hearts of 27-164 photos, numbers, words, I love you, circle, star, flower, grid, your own mask) and how many photos fill each without repeats. Call it first when the user only mentions Collager.ai, says hello to it, or asks what it can make.
No arguments.
{
"type": "object",
"additionalProperties": false
}Shows the looks of a Collager.ai photo mosaic (one large picture made of hundreds or thousands of small photos) with example images: soft classic, clean subject, stronger mosaic, uniform or mixed tile sizes. Use before start_photo_mosaic when the user wants to choose a style.
No arguments.
{
"type": "object",
"additionalProperties": false
}Builds a photo collage in the shape of a heart, a number (age, anniversary, year), a word, a star, a flower and more from the user's photos, and returns a watermarked preview within seconds. Use when the user asks for a heart collage, a birthday/anniversary number collage, a 'photo collage in the shape of ...', or a collage from several photos. Pass the photos as public links in photo_urls, or as files the user attached (photos). 1 to 300 photos; if there are fewer photos than cells, photos repeat. The result id (clg_...) is a private handle valid for 30 days; photos and results are deleted after 30 days. The preview is watermarked; the full-resolution file is downloaded from the collager.ai page given in full_resolution_page. Building can take up to a minute - if status is still processing, call get_shape_collage with the id.
| Argument | Type | Description |
|---|---|---|
| shape* | object | The figure. Examples: {"type":"heart"} (size picked from the photo count), {"type":"heart","cells":70}, {"type":"number","text":"30"}, {"type":"text","text":"LOVE"}, {"type":"love"} ("I love you"), {"type":"star","size":"large"}, {"type":"grid","n":4}. Call list_collage_shapes for all options. |
| photos | array | Photos the user attached in the chat. |
| gap_pct | number | White gap between photos, % of a cell (default 6). |
| background | string | Background colour: white (default), cream, pink, black or #rrggbb. |
| photo_urls | array | Public http(s) links to the photos (JPEG/PNG/WEBP). |
Shows the plan of the photo collage the user picked (shape, how many photos it holds, background) with a real example, and how to attach the photos. Use it when the user has chosen a shape but has not attached the photos yet. After the user attaches the photos or shares links, call make_shape_collage with the same shape and background.
| Argument | Type | Description |
|---|---|---|
| shape* | object | The figure. Examples: {"type":"heart"} (size picked from the photo count), {"type":"heart","cells":70}, {"type":"number","text":"30"}, {"type":"text","text":"LOVE"}, {"type":"love"} ("I love you"), {"type":"star","size":"large"}, {"type":"grid","n":4}. Call list_collage_shapes for all options. |
| background | string | Background colour: white (default), cream, pink, black or #rrggbb. |
{
"type": "object",
"required": [
"shape"
],
"properties": {
"shape": {
"type": "object",
"required": [
"type"
],
"properties": {
"n": {
"type": "integer",
"maximum": 12,
"minimum": 2,
"description": "grid: n x n."
},
"url": {
"type": "string",
"description": "mask_url: link to a black-and-white picture; each black pixel is one photo cell."
},
"size": {
"enum": [
"small",
"medium",
"large"
],
"type": "string",
"description": "number/text/circle/star/flower: how many cells (bigger = more photos)."
},
"text": {
"type": "string",
"maxLength": 14,
"description": "number/text: the digits or word (Latin letters and digits)."
},
"type": {
"enum": [
"heart",
"number",
"text",
"love",
"circle",
"star",
"flower",
"daisy",
"yinyang",
"grid",
"mask_url"
],
"type": "string"
},
"cells": {
"enum": [
27,
34,
70,
79,
91,
164
],
"type": "integer",
"description": "Heart only: number of photo cells."
}
},
"description": "The figure. Examples: {\"type\":\"heart\"} (size picked from the photo count), {\"type\":\"heart\",\"cells\":70}, {\"type\":\"number\",\"text\":\"30\"}, {\"type\":\"text\",\"text\":\"LOVE\"}, {\"type\":\"love\"} (\"I love you\"), {\"type\":\"star\",\"size\":\"large\"}, {\"type\":\"grid\",\"n\":4}. Call list_collage_shapes for all options."
},
"background": {
"type": "string",
"description": "Background colour: white (default), cream, pink, black or #rrggbb."
}
},
"additionalProperties": false
}Gives the link where the user builds a photo mosaic: one main photo recreated from many small photos (best with 100-2000 photos - family archive, wedding, team, school year). The user uploads the photos on collager.ai, picks the style, and the site builds a watermarked preview in minutes. Call it only after the user has decided to make a photo mosaic; to show the options first, use list_mosaic_styles.
| Argument | Type | Description |
|---|---|---|
| style | string | Optional: the style the user picked in list_mosaic_styles (the site shows a preview of several styles anyway). |
| occasion | string | Optional: what it is for (anniversary, memorial, wedding, team ...), used only to tailor the tips. |
{
"type": "object",
"properties": {
"style": {
"enum": [
"soft",
"clean_subject",
"stronger_mosaic",
"uniform"
],
"type": "string",
"description": "Optional: the style the user picked in list_mosaic_styles (the site shows a preview of several styles anyway)."
},
"occasion": {
"type": "string",
"maxLength": 60,
"description": "Optional: what it is for (anniversary, memorial, wedding, team ...), used only to tailor the tips."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"shape"
],
"properties": {
"shape": {
"type": "object",
"required": [
"type"
],
"properties": {
"n": {
"type": "integer",
"maximum": 12,
"minimum": 2,
"description": "grid: n x n."
},
"url": {
"type": "string",
"description": "mask_url: link to a black-and-white picture; each black pixel is one photo cell."
},
"size": {
"enum": [
"small",
"medium",
"large"
],
"type": "string",
"description": "number/text/circle/star/flower: how many cells (bigger = more photos)."
},
"text": {
"type": "string",
"maxLength": 14,
"description": "number/text: the digits or word (Latin letters and digits)."
},
"type": {
"enum": [
"heart",
"number",
"text",
"love",
"circle",
"star",
"flower",
"daisy",
"yinyang",
"grid",
"mask_url"
],
"type": "string"
},
"cells": {
"enum": [
27,
34,
70,
79,
91,
164
],
"type": "integer",
"description": "Heart only: number of photo cells."
}
},
"description": "The figure. Examples: {\"type\":\"heart\"} (size picked from the photo count), {\"type\":\"heart\",\"cells\":70}, {\"type\":\"number\",\"text\":\"30\"}, {\"type\":\"text\",\"text\":\"LOVE\"}, {\"type\":\"love\"} (\"I love you\"), {\"type\":\"star\",\"size\":\"large\"}, {\"type\":\"grid\",\"n\":4}. Call list_collage_shapes for all options."
},
"photos": {
"type": "array",
"items": {
"type": "object",
"required": [
"download_url",
"file_id"
],
"properties": {
"file_id": {
"type": "string"
},
"file_name": {
"type": "string"
},
"mime_type": {
"type": "string"
},
"download_url": {
"type": "string"
}
}
},
"maxItems": 300,
"description": "Photos the user attached in the chat."
},
"gap_pct": {
"type": "number",
"maximum": 40,
"minimum": 0,
"description": "White gap between photos, % of a cell (default 6)."
},
"background": {
"type": "string",
"description": "Background colour: white (default), cream, pink, black or #rrggbb."
},
"photo_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 300,
"description": "Public http(s) links to the photos (JPEG/PNG/WEBP)."
}
},
"additionalProperties": false
}