{"name":"signal://ascii","version":"0.1.1","description":"Convert images and video frames into ASCII / ANSI art with perceptually-correct luminance, dithering, and Bayesian temporal smoothing.","discovery":{"openapi":"https://v2a.platphormnews.com/api/openapi.json","mcp":"https://v2a.platphormnews.com/api/mcp","llms":"https://v2a.platphormnews.com/llms.txt","llmsFull":"https://v2a.platphormnews.com/llms-full.txt","interoperability":"https://v2a.platphormnews.com/api/v1/interoperability"},"capabilities":{"formats":[{"id":"text","mime":"text/plain","ext":"txt","label":"Plain text"},{"id":"ansi","mime":"text/plain","ext":"ans","label":"ANSI (truecolor)"},{"id":"html","mime":"text/html","ext":"html","label":"HTML"},{"id":"json","mime":"application/json","ext":"json","label":"JSON"},{"id":"json-compact","mime":"application/json","ext":"json","label":"Compact JSON + chroma"},{"id":"svg","mime":"image/svg+xml","ext":"svg","label":"SVG"}],"charsets":["standard","detailed","blocks","binary","dots","minimal"],"color":true,"edgeDetection":true,"dithering":"floyd-steinberg","luminance":"linear-light-rec709","streaming":"browser-only (webcam + video), Bayesian temporal filter","optimization":"source-aware Auto Director with target_met/best_effort rubric evidence","glyphSelection":"adaptive one-byte ASCII rate-distortion codebook with measured RMSE","compactChroma":"rgb24-b64-v1","a2vHandoff":{"targetOrigin":"https://a2v.platphormnews.com","manifest":"https://v2a.platphormnews.com/api/v1/a2v-handoff","launchUrl":"https://a2v.platphormnews.com/?handoff=v2a&protocol=platphorm.v2a.a2v.handoff.v1&mode=webcam-stream&source=v2a.platphormnews.com&traceId=TRACE_ID","transport":"window.postMessage","modes":["latest-frame","webcam-stream","video-stream"],"backendAsyncAuth":"PLATPHORM_API_KEY"}},"tools":[{"name":"render_ascii","description":"Render a single image to ASCII/ANSI/HTML/JSON/SVG.","endpoint":{"method":"POST","url":"https://v2a.platphormnews.com/api/v1/render"},"mcp":{"method":"tools/call","name":"render_ascii"},"input":{"oneOf":["multipart image field","json imageUrl","json imageBase64"],"params":{"columns":{"type":"integer 8–400","default":"120","description":"Output width in characters."},"charset":{"type":"enum","default":"detailed","description":"One of: standard, detailed, blocks, binary, dots, minimal."},"format":{"type":"enum","default":"text","description":"text | ansi | html | json | json-compact | svg."},"color":{"type":"boolean","default":"false","description":"Per-cell 24-bit color (ignored by plain text)."},"invert":{"type":"boolean","default":"false","description":"Invert luminance mapping."},"contrast":{"type":"float 0.2–4","default":"1.15","description":"Tonal contrast multiplier."},"brightness":{"type":"float -150–150","default":"0","description":"Luminance offset."},"saturation":{"type":"float 0–4","default":"1.4","description":"Color-mode saturation boost."},"gamma":{"type":"float 0.2–3","default":"1","description":"Perceptual midtone response."},"edges":{"type":"boolean","default":"false","description":"Sobel edge-detection line-art mode."},"edgeStrength":{"type":"float 0.1–5","default":"1.8","description":"Edge magnitude multiplier."},"dither":{"type":"boolean","default":"false","description":"Floyd–Steinberg error diffusion."},"sharpen":{"type":"float 0–1","default":"0.35","description":"Unsharp-mask detail enhancement."},"autoLevels":{"type":"float 0–1","default":"0.9","description":"Automatic percentile histogram stretch."},"structure":{"type":"float 0–1","default":"0.55","description":"Contour-aware directional glyph substitution ( - / | \\ )."},"denoise":{"type":"float 0–1","default":"0.35","description":"Edge-preserving bilateral denoising before detail recovery."},"motionSensitivity":{"type":"float 0–1","default":"0.7","description":"Motion responsiveness in the final Bayesian posterior update."},"autoOptimize":{"type":"float 0–1","default":"0.9","description":"Strength of source-aware Auto Director tuning against the selected quality rubric."},"qualityTarget":{"type":"enum","default":"balanced","description":"balanced | portrait | motion | low-light | round-trip."},"glyphStrategy":{"type":"enum","default":"adaptive","description":"adaptive chooses the smallest glyph codebook under maxGlyphRmse; fixed preserves the selected ramp."},"maxGlyphRmse":{"type":"float 0.005–0.1","default":"0.03","description":"Maximum normalized luminance quantization RMSE for adaptive glyph selection."},"monoColor":{"type":"hex","default":"#e5e5e5","description":"Color for mono/ansi/svg/html output."}}}},{"name":"stream_ascii_to_a2v","description":"Browser-only trusted handoff that opens A2V and streams latest V2A ASCII frames from video or webcam via fixed-origin postMessage.","endpoint":{"method":"GET","url":"https://v2a.platphormnews.com/api/v1/a2v-handoff"},"target":"https://a2v.platphormnews.com","input":{"oneOf":["latest-frame","webcam-stream","video-stream"],"params":{"traceId":{"type":"string","default":"generated by browser","description":"Public trace id for handoff correlation."}}}}],"defaults":{"columns":120,"charset":"detailed","format":"text","color":false,"invert":false,"contrast":1.15,"brightness":0,"saturation":1.4,"gamma":1,"edges":false,"edgeStrength":1.8,"dither":false,"sharpen":0.35,"autoLevels":0.9,"structure":0.55,"denoise":0.35,"motionSensitivity":0.7,"autoOptimize":0.9,"qualityTarget":"balanced","glyphStrategy":"adaptive","maxGlyphRmse":0.03,"monoColor":"#e5e5e5"},"recipes":[{"goal":"Turn a URL into colored ANSI for a terminal","curl":"curl -X POST https://v2a.platphormnews.com/api/v1/render -H \"Content-Type: application/json\" -d '{\"imageUrl\":\"https://asciicast.stream/test-portrait.png\",\"format\":\"ansi\",\"color\":true,\"columns\":120}'"},{"goal":"Upload a local file and get plain text","curl":"curl -F \"image=@photo.jpg\" \"https://v2a.platphormnews.com/api/v1/render?columns=100\""},{"goal":"Call as an MCP tool","jsonrpc":{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"render_ascii","arguments":{"imageUrl":"https://asciicast.stream/test-portrait.png","color":true}}}},{"goal":"Open the trusted A2V receiver for webcam streaming","url":"https://a2v.platphormnews.com/?handoff=v2a&protocol=platphorm.v2a.a2v.handoff.v1&mode=webcam-stream&source=v2a.platphormnews.com&traceId=TRACE_ID","protocol":"platphorm.v2a.a2v.handoff.v1"}]}