image_placeholder
Generate placeholder images for testing and development by specifying provider, width, and height parameters.
Instructions
Generate a placeholder image based on a provider, width, and height.
Use this tool to generate a placeholder image for testing or development purposes.
Args:
provider: The provider to use for the image, must be either `placehold` or `lorem-picsum`.
width: The width of the image, must be a positive integer between 1 and 10000.
height: The height of the image, must be a positive integer between 1 and 10000.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| provider | Yes | ||
| width | Yes | ||
| height | Yes |
Implementation Reference
- main.py:8-52 (handler)The core handler function for the 'image_placeholder' tool. It validates inputs and generates a URL to a placeholder image from either 'placehold.co' or 'picsum.photos' based on the provider, decorated with @mcp.tool() for registration.@mcp.tool() def image_placeholder( provider: Literal["placehold", "lorem-picsum"], width: int, height: int, ) -> str: """ Generate a placeholder image based on a provider, width, and height. Use this tool to generate a placeholder image for testing or development purposes. Args: provider: The provider to use for the image, must be either `placehold` or `lorem-picsum`. width: The width of the image, must be a positive integer between 1 and 10000. height: The height of the image, must be a positive integer between 1 and 10000. """ # if provider is not in the list of providers, raise a ValueError if provider not in ["placehold", "lorem-picsum"]: raise ValueError(f"Invalid provider: {provider}") # if width is not a positive integer between 1 and 10000, raise a ValueError if width <= 0 or width > 10000: raise ValueError( f"Invalid width: {width}. Width must be a positive integer between 1 and 10000" ) # if height is not a positive integer between 1 and 10000, raise a ValueError if height <= 0 or height > 10000: raise ValueError( f"Invalid height: {height}. Height must be a positive integer between 1 and 10000" ) # if provider is placehold, return the placehold image if provider == "placehold": return ( f"https://placehold.co/{width}x{height}" if height is not None else f"https://placehold.co/{width}" ) # if provider is lorem-picsum, return the lorem-picsum image elif provider == "lorem-picsum": return ( f"https://picsum.photos/{width}/{height}" if height is not None else f"https://picsum.photos/{width}" )
- main.py:9-22 (schema)Input schema defined by function parameters and docstring: provider (enum: 'placehold' or 'lorem-picsum'), width/height (positive ints 1-10000), returns string URL.def image_placeholder( provider: Literal["placehold", "lorem-picsum"], width: int, height: int, ) -> str: """ Generate a placeholder image based on a provider, width, and height. Use this tool to generate a placeholder image for testing or development purposes. Args: provider: The provider to use for the image, must be either `placehold` or `lorem-picsum`. width: The width of the image, must be a positive integer between 1 and 10000. height: The height of the image, must be a positive integer between 1 and 10000. """
- main.py:5-5 (registration)Initializes the FastMCP server instance named 'image-placeholder', to which tools are registered.mcp = FastMCP("image-placeholder")