get_meme_info
Retrieve details about meme templates and their text placeholder requirements to prepare content for meme generation.
Instructions
Get information about available memes and their text placeholder requirements.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| meme_name | No | Optional: Get info for a specific meme |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- app/server.py:159-196 (handler)The main handler function for the 'get_meme_info' tool. It is decorated with @mcp.tool() which also serves as its registration. The function retrieves meme configurations using get_meme_configs() and returns detailed information about a specific meme (if provided) or lists all available memes with their placeholders.
@mcp.tool() async def get_meme_info( meme_name: Annotated[ str | None, Field(description="Optional: Get info for a specific meme") ] = None, ) -> dict: """Get information about available memes and their text placeholder requirements.""" meme_configs = get_meme_configs() if meme_name: if meme_name not in meme_configs: return {"status": "error", "message": f"Unknown meme type: {meme_name}"} config = meme_configs[meme_name] placeholder_names = list(config.placeholders.keys()) return { "status": "success", "meme_name": meme_name, "template_file": config.template_file, "placeholder_names": placeholder_names, "example_usage": { "meme_name": meme_name, "texts": {name: f"Example {name}" for name in placeholder_names}, }, } else: all_memes = {} for meme_type, config in meme_configs.items(): all_memes[meme_type] = { "placeholder_names": list(config.placeholders.keys()), "template_file": config.template_file, } return { "status": "success", "available_memes": all_memes, "total_memes": len(all_memes), }