Skip to main content
Glama

Import an SVG as Rive vector shapes

riv_import_svg

Transform SVG files into professional Rive bezier shapes, outputting scene-fragment JSON for animation imports. Supports paths, gradients, strokes, nested transforms.

Instructions

Convert an SVG file (Figma/Illustrator export, icon, illustration) into Rive bezier path shapes — the professional way to get high-quality artwork instead of drawing with primitives. Writes a scene-fragment JSON (shapes with full cubic vertices, gradients, strokes) and returns a rendered preview. Use the fragment in riv_create via "imports". Supports path/rect/circle/ellipse/polygon/polyline/line, nested transforms, style attrs, linear/radial gradients. Not imported: (use texts[] with a font), , filters, masks.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
svgNoInline SVG markup (alternative to svgPath)
outSpecYesOutput scene-fragment JSON path (e.g. logo.scene.json)
svgPathNoPath to the .svg file
idPrefixNoPrefix for generated shape ids (avoid collisions)
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It discloses the output format ('Writes a scene-fragment JSON... returns a rendered preview'), supported elements ('Supports path/rect/circle/ellipse/polygon/polyline/line, nested transforms, style attrs, linear/radial gradients'), and limitations ('Not imported: <text>, <image>, filters, masks'). It doesn't mention overwrite behavior or error handling, but the disclosed behavior goes well beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (about 80 words) and front-loaded with the primary action in the first sentence. It logically flows from action to output to integration to supported/unsupported elements, with no wasted or redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema and no annotations, but the description covers the key contextual needs: what input it accepts, what it produces (scene-fragment JSON and rendered preview), how the output is used (in riv_create), and the supported/unsupported SVG features. It could be more specific about the preview return format, but for a tool of this complexity, the description is largely sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with all four parameters (svg, svgPath, outSpec, idPrefix) already described in the input schema. The description adds no parameter-specific details beyond the schema, so the baseline of 3 applies. It does connect outSpec to riv_create, but that is not a semantic clarification of the parameter itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'Convert an SVG file (Figma/Illustrator export, icon, illustration) into Rive bezier path shapes' and 'Writes a scene-fragment JSON (shapes with full cubic vertices, gradients, strokes) and returns a rendered preview.' It differentiates from siblings by positioning it as 'the professional way to get high-quality artwork instead of drawing with primitives' and by mentioning integration with riv_create via 'imports.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage context and exclusions: it is 'instead of drawing with primitives,' tells how to use the output ('Use the fragment in riv_create via imports'), and lists what is not imported with an alternative for text: 'Not imported: <text> (use texts[] with a font), <image>, filters, masks.' This gives clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ODU33104/rive-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server