{"client_config_example": {"mcpServers": {"johnfiocca-magic-ball": {"url": "https://mcp.johnfiocca.com/mcp"}}}, "cloud_function_name": "johnfiocca-mcp-demo", "demo_commands": {"health": "curl https://mcp.johnfiocca.com/healthz/", "marketing_recipe_demo": "curl https://mcp.johnfiocca.com/demo/campaign-marketing-recipe", "mcp_resources_list": "curl -X POST https://mcp.johnfiocca.com/mcp -H 'Content-Type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"resources/list\"}'", "mcp_tools_list": "curl -X POST https://mcp.johnfiocca.com/mcp -H 'Content-Type: application/json' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\"}'", "open": "curl https://mcp.johnfiocca.com/", "rest_demo": "curl -X POST https://mcp.johnfiocca.com/demo/magic-ball -H 'Content-Type: application/json' -d '{\"question\":\"Will this demo work?\"}'"}, "description": "A small public Model Context Protocol demo hosted as a Google Cloud Run function.", "fastmcp": {"module": "fastmcp_server.py", "note": "FastMCP defines the canonical MCP tools; the Cloud Run function wrapper reuses the same logic."}, "google_cloud_project": "olive-paws", "health_endpoint": "/healthz/", "mcp_endpoint": "/mcp", "name": "mcp.johnfiocca.com public MCP demo", "non_mcp_demo_endpoints": ["/demo/magic-ball", "/demo/campaign-marketing-recipe"], "resources": [{"description": "Read-only sample recipe for turning campaign data into a spreadsheet analysis, slide deck outline, and recommendation email draft.", "mimeType": "text/markdown", "name": "digital_campaign_marketing_recipe", "uri": "demo://marketing/campaign-recipe"}], "safety": ["Demo POST JSON bodies sent to /demo/magic-ball and /mcp are logged to Cloud Logging for sharing and debugging.", "Do not send secrets or personal data.", "Authorization, Cookie, and other request headers are not logged.", "Magic-ball answers are random, non-advisory, and for demonstration only."], "tools": [{"description": "Accepts a question and returns a random, safe demo answer with a timestamp.", "name": "magic_ball"}, {"description": "Returns a sample digital marketing campaign workflow recipe for spreadsheet analysis, slides, and an email draft.", "name": "campaign_marketing_recipe"}, {"description": "Explains what this MCP server exposes and how MCP differs from a regular REST API.", "name": "explain_mcp"}]}