{"name":"io.github.kimimgo/viznoir","slug":"kimimgo-viznoir","title":"viznoir","description":"Cinema-quality science visualization for AI agents — headless VTK via MCP.","url":"https://mcp.market/server/kimimgo-viznoir","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":38,"stars":19,"forks":5,"downloads_week":27,"last_push_at":"2026-09-21T11:46:32.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/kimimgo/viznoir","website":"https://kimimgo.github.io/viznoir/","version":"0.10.1","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"viznoir","version":"0.10.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Rendering backend: gpu, cpu, or auto","name":"VIZNOIR_RENDER_BACKEND"},{"description":"Output directory for rendered images","name":"VIZNOIR_OUTPUT_DIR"}]}],"tools":[{"name":"analyze_data","description":"[DEPRECATED — use inspect_physics instead] Analyze VTK/simulation data.","write_action":false,"price_micros":0,"input_schema":null},{"name":"animate","description":"Create an animation from time series data or camera orbit.","write_action":true,"price_micros":0,"input_schema":null},{"name":"auto_postprocess","description":"Autonomous post-processing: inspect → visualize → evaluate → refine.","write_action":false,"price_micros":0,"input_schema":null},{"name":"batch_render","description":"Render multiple fields from the same dataset in one call.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cinematic_render","description":"Cinematic-quality rendering with auto-framing, 3-point lighting, SSAO, and PBR.","write_action":false,"price_micros":0,"input_schema":null},{"name":"clip","description":"Create a clipped visualization.","write_action":true,"price_micros":0,"input_schema":null},{"name":"compare","description":"Compare two simulation results side-by-side or as a difference map.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compose_assets","description":"Compose multiple assets into a deliverable format.","write_action":false,"price_micros":0,"input_schema":null},{"name":"contour","description":"Create an iso-surface (contour) visualization.","write_action":true,"price_micros":0,"input_schema":null},{"name":"execute_pipeline","description":"Execute a custom pipeline definition (advanced).","write_action":true,"price_micros":0,"input_schema":null},{"name":"extract_stats","description":"Extract statistical summary (min/max/mean/std) for fields.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_data","description":"Inspect a simulation file and return metadata.","write_action":false,"price_micros":0,"input_schema":null},{"name":"inspect_physics","description":"Extract structured physics data for AI storytelling.","write_action":false,"price_micros":0,"input_schema":null},{"name":"integrate_surface","description":"Integrate a field over a surface to compute forces, areas, or fluxes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"plot_over_line","description":"Sample field values along a line between two points.","write_action":false,"price_micros":0,"input_schema":null},{"name":"preview_3d","description":"Export dataset to glTF/glB for interactive 3D viewing in a browser.","write_action":false,"price_micros":0,"input_schema":null},{"name":"probe_timeseries","description":"Sample a field value at a fixed point across timesteps.","write_action":false,"price_micros":0,"input_schema":null},{"name":"pv_isosurface","description":"Run DualSPHysics IsoSurface to generate VTK surface mesh files.","write_action":true,"price_micros":0,"input_schema":null},{"name":"render","description":"Render a field visualization and return a PNG screenshot.","write_action":false,"price_micros":0,"input_schema":null},{"name":"slice","description":"Create a slice (cut plane) visualization.","write_action":true,"price_micros":0,"input_schema":null},{"name":"split_animate","description":"Create a split-pane synchronized animation with multiple views.","write_action":true,"price_micros":0,"input_schema":null},{"name":"streamlines","description":"Create a streamline visualization for vector fields.","write_action":true,"price_micros":0,"input_schema":null},{"name":"volume_render","description":"Volume render 3D data (CT, MRI, CFD fields) with transfer function presets.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-27T12:16:21.816Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T12:16:21.828Z","components":{"code":{"score":25,"max":25,"notes":["89 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 6 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"viznoir","version":"0.10.1","found":true,"weeklyDownloads":27,"license":"MIT","dependencyCount":25,"publishedAt":"2026-06-03T07:16:45.919634Z","repositoryUrl":"https://github.com/kimimgo/viznoir"}],"repo":{"found":true,"owner":"kimimgo","repo":"viznoir","archived":false,"pushedAt":"2026-09-21T11:46:32Z","stars":19,"forks":5,"openIssues":12,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/21175731?v=4","ownerCreatedAt":"2016-08-22T14:04:59Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/21175731?v=4&s=128","source":"github"},"presence":{"stars":19,"forks":5,"downloadsWeek":27,"license":"MIT","lastPushAt":"2026-09-21T11:46:32.000Z","score":38}}}},"grade_history":[],"reviews":[]}