rive-docs-mcp
Provides documentation and implementation guides for integrating Rive animations into Android applications.
Provides documentation and implementation guides for integrating Rive animations into Flutter mobile apps.
Provides documentation and implementation guides for integrating Rive animations into native iOS applications.
Provides documentation and guides for using Rive animations in web applications via the JavaScript runtime.
Provides documentation and guides for using Rive animations in .NET applications via the C# community runtime.
Provides documentation and guides for integrating Rive animations into React applications.
Access Rive's animation documentation, runtime guides, editor features, and tutorials for creating interactive animations.
Provides documentation and implementation guides for integrating Rive animations into Unity games.
Provides documentation and implementation guides for integrating Rive animations into Unreal Engine projects.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rive-docs-mcpSearch Rive docs for React runtime setup"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Rive Docs MCP - Rive Documentation Model Context Protocol Server
Rive Documentation MCP Server - Access Rive's animation documentation, runtime guides, editor features, and tutorials through Model Context Protocol. Search animations, state machines, runtime implementations, and editor capabilities across web, mobile, and game platforms. Get instant access to React, Flutter, Unity integration guides, and complete API references directly in Claude, Cursor, or any MCP-compatible AI assistant.
⨠Features
š Smart Search: Intelligent search across Rive documentation for animations, runtimes, editor features, and guides
š Complete Documentation Access: Full access to Rive's documentation for all runtime platforms
š® Multi-Platform Support: Web, React, Flutter, iOS, Android, Unity, Unreal Engine, and more
šØ Editor Features: Browse animation tools, constraints, state machines, bones, and timeline features
š Runtime Guides: Comprehensive implementation guides for all supported platforms
šÆ Tutorial Access: Find and access tutorials by topic, difficulty, or runtime platform
š§ API References: Complete API documentation for runtime-specific implementations
ā” High Performance: Optimized with caching and concurrent request handling
š Feature Support Matrix: Check feature compatibility across different runtime platforms
š Developer Friendly: Built for AI-powered development workflows
Related MCP server: DevDocs MCP
š Quick Start
Claude Desktop (Recommended)
Add this to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\\Claude\\claude_desktop_config.json
{
"mcpServers": {
"rive-docs": {
"command": "node",
"args": ["path/to/rive-docs-mcp/dist/index.js"]
}
}
}Local Development
Clone and build the project:
git clone <repository-url>
cd rive-docs-mcp
npm install
npm run buildTest the server:
npm startš¦ Installation
Claude Code
# Add as MCP server
claude mcp add rive-docs -- node path/to/rive-docs-mcp/dist/index.jsCursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"rive-docs": {
"command": "node",
"args": ["path/to/rive-docs-mcp/dist/index.js"]
}
}
}Other MCP Clients
The server works with any MCP-compatible client. Use the command:
node path/to/rive-docs-mcp/dist/index.jsš ļø Available Tools
š search_rive_docs
Search Rive documentation across all categories.
Parameters:
query(required): Search terms (e.g., "React runtime", "state machine events")category: Filter by category (all,runtimes,editor,game-runtimes,tutorials)runtime: Filter by specific runtime platformlimit: Max results (default: 10, max: 50)
Example:
search_rive_docs query="React animation setup" category="runtimes" limit=5š get_rive_doc_content
Get detailed content from a specific Rive documentation page.
Parameters:
url(required): Full Rive documentation URLincludeCode: Include code examples (default: true)includeLinks: Include related links (default: false)maxLength: Max content length (default: 10000)
Example:
get_rive_doc_content url="https://rive.app/docs/runtimes/react/getting-started"š list_runtimes
List all available Rive runtime platforms.
Parameters:
platform: Filter by platform type (all,web,mobile,game)status: Filter by status (all,stable,beta,community)includeDetails: Include detailed information (default: true)
š get_runtime_guide
Get comprehensive implementation guide for a specific runtime.
Parameters:
runtime(required): Runtime platform (web,react,flutter,unity, etc.)section: Specific section (getting-started,setup,api-reference)includeExamples: Include code examples (default: true)
šØ list_editor_features
Browse Rive editor features and capabilities.
Parameters:
category: Feature category (all,animation,constraints,state-machines)includeDetails: Include detailed descriptions (default: true)
š get_tutorials
Find tutorials by topic, difficulty, or runtime.
Parameters:
topic: Tutorial topic or search termdifficulty: Filter by difficulty (all,beginner,intermediate,advanced)runtime: Filter by runtime platformlimit: Max tutorials to return (default: 10)
ā
check_feature_support
Check feature support across runtime platforms.
Parameters:
feature(required): Feature to check (e.g., "state machines", "bones")runtime: Specific runtime to check (optional)
š get_api_reference
Get API reference for a specific runtime.
Parameters:
runtime(required): Runtime platformclassName: Specific class/component name (optional)includeExamples: Include usage examples (default: true)
š” Usage Examples
Search for React Integration
search_rive_docs query="React component setup" category="runtimes" runtime="react"Get Flutter Getting Started Guide
get_runtime_guide runtime="flutter" section="getting-started"Find State Machine Tutorials
get_tutorials topic="state machine" difficulty="beginner"Check Unity Feature Support
check_feature_support feature="timeline events" runtime="unity"Browse Animation Features
list_editor_features category="animation"šÆ Supported Runtimes
App Runtimes
Web (JavaScript) - Browser-based animations
React - React component integration
React Native - Mobile React applications
Flutter - Cross-platform mobile apps
iOS - Native iOS applications (Swift)
Android - Native Android applications (Kotlin/Java)
Game Runtimes
Unity - Unity game engine (C#)
Unreal Engine - Unreal Engine (C++)
Defold - Defold game engine (Lua)
Community Runtimes
C# - .NET applications
Qt/QtQuick - Qt applications
š§ Development
Build Commands
# Install dependencies
npm install
# Build TypeScript
npm run build
# Development mode (watch)
npm run dev
# Run tests
npm test
# Lint code
npm run lint
# Clean build
npm run cleanProject Structure
src/
āāā index.ts # Main MCP server
āāā tools/ # Tool implementations
ā āāā definitions.ts # Tool definitions
ā āāā handlers.ts # Tool handlers
ā āāā search.ts # Search functionality
ā āāā doc-fetcher.ts # Document fetching
āāā utils/ # Utilities
ā āāā constants.ts # Configuration constants
ā āāā http-client.ts # HTTP client
ā āāā cache.ts # Caching system
ā āāā logger.ts # Logging utility
ā āāā error-handler.ts # Error handling
ā āāā content-extractor.ts # Content extraction
ā āāā navigation-crawler.ts # Navigation discovery
āāā types/ # TypeScript types
āāā index.ts # Type definitionsš Performance
Caching: TTL-based caching for documentation content, search results, and navigation
Rate Limiting: Built-in rate limiting to respect Rive's servers
Concurrent Requests: Limited concurrent requests for optimal performance
Error Handling: Comprehensive error handling with retry logic
Memory Management: Efficient memory usage with cache size limits
š¤ Contributing
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
š License
This project is licensed under the MIT License - see the LICENSE file for details.
š Acknowledgments
Rive for creating an amazing animation platform
Anthropic for the Model Context Protocol
The Rive community for excellent documentation and resources
š Links
Made with ā¤ļø for the Rive animation community
Available Tools
8 toolscheck_feature_supportA
Check which Rive features are supported across different runtime platforms. Useful for planning cross-platform implementations.
| Name | Required | Description | Default |
|---|---|---|---|
| feature | Yes | Rive feature to check support for. Examples: "state machines", "bones", "timeline events", "nested artboards" | |
| runtime | No | Specific runtime to check. Leave empty to check all runtimes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, but it only says 'Check' without detailing return format, potential errors, or whether the operation is read-only. It does not contradict any annotations (since there are none), but adds minimal behavioral context beyond the obvious check action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with the core purpose, and every word contributes value. It avoids redundancy and is appropriately concise for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward check tool with complete parameter documentation and no output schema, the description adequately conveys its purpose and use case. It does not explain return values, but this is less critical given the tool's low complexity. The context signals and sibling names help complete the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters 'feature' and 'runtime' already have descriptions providing examples and enum options. The tool description does not add further meaning to the parameters, staying at the baseline level expected when the schema handles parameter documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks Rive feature support across runtime platforms, using the specific verb 'Check' with a defined resource and scope. This distinguishes it from sibling tools like list_runtimes or get_runtime_guide, which focus on runtime information rather than feature compatibility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool ('Useful for planning cross-platform implementations'), which implies its purpose in a planning workflow. It does not explicitly mention alternatives or exclusions, but the use case is stated clearly enough to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_api_referenceB
Get API reference documentation for a specific Rive runtime. Shows available classes, methods, properties, and usage examples.
| Name | Required | Description | Default |
|---|---|---|---|
| runtime | Yes | Runtime platform to get API reference for. | |
| className | No | Specific class or component name to get reference for. Examples: "Rive", "RiveAnimation", "StateMachine" | |
| includeExamples | No | Include usage examples for the API. Default: true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It mentions that it 'shows' content, which implies a read-only operation, but it does not disclose potential behavior such as error handling, network dependencies, or any side effects. It adds minimal context beyond the tool's name and schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and resource. Every word earns its place, and there is no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple documentation lookup tool, the description adequately conveys what it returns (classes, methods, properties, examples). It doesn't explain the overall structure or how to use the parameters together, but given the low complexity and rich schema, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions cover all three parameters (runtime, className, includeExamples) with clear details and examples. The tool description does not add meaning beyond the schema, so the baseline of 3 is appropriate when schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Get') and resource ('API reference documentation for a specific Rive runtime'), and lists what it shows. It implicitly distinguishes itself from sibling tools like get_runtime_guide or search_rive_docs by focusing on API reference, but it doesn't explicitly name alternatives, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There is no mention of use cases, prerequisites, or exclusions. The only implied usage is 'when you need API reference', but that's not articulated clearly enough to be considered helpful guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_rive_doc_contentA
Get detailed content from a specific Rive documentation page. Use this after search_rive_docs to get complete implementation details, code examples, and step-by-step guides.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full URL of the Rive documentation page. Must start with https://rive.app/docs/. Example: "https://rive.app/docs/runtimes/react/getting-started" | |
| maxLength | No | Maximum content length in characters (default: 10000) | |
| includeCode | No | Include code examples and snippets in the response. Default: true | |
| includeLinks | No | Include related links and references. Default: false |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It clarifies that the tool retrieves detailed content and warns that search_rive_docs comes first, adding workflow context. But it does not disclose any behavioral traits like rate limits, response format, or constraints beyond what the schema already specifies. The description is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: the first states the core function, the second gives usage guidance and expected output. No filler or repetition; every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple content-retrieval tool with 100% schema coverage and no output schema, the description is nearly complete. It explains the use case and what type of content to expect, though it does not explicitly describe the response structure. Still, the tool is simple enough that the description suffices.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with clear explanations for every parameter (url format/example, maxLength default, includeCode/includeLinks defaults). The description text adds no extra parameter semantics, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get detailed content from a specific Rive documentation page' with a specific verb and resource, and explicitly distinguishes it from sibling search_rive_docs by stating it provides 'complete implementation details, code examples, and step-by-step guides'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides clear context: 'Use this after search_rive_docs'. This tells the agent the typical workflow and when to invoke this tool. However, it does not mention exclusions or alternatives like get_runtime_guide or get_api_reference, so it falls short of explicit when-not/alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_runtime_guideA
Get comprehensive implementation guide for a specific Rive runtime. Includes setup instructions, code examples, and best practices.
| Name | Required | Description | Default |
|---|---|---|---|
| runtime | Yes | Runtime platform to get guide for. Example: "react" for React integration guide. | |
| section | No | Specific section of the guide. Default: "getting-started" | |
| includeExamples | No | Include code examples and sample implementations. Default: true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears the full burden. The verb 'Get' implies a read-only operation, and the description outlines the content (setup instructions, code examples, best practices), but it does not disclose behavior such as response format, size, or any side effects. It adds some context but not rich detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two clear sentences, front-loaded with the main purpose, and adds a meaningful detail about content. Every word earns its place, with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple getter nature, the description covers the core purpose and content, and the schema handles parameter details. However, it lacks context about return format or how sections work, and without annotations, it leaves some ambiguity compared to a more complete description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage, describing all three parameters with examples and defaults. The description adds only a general context ('specific Rive runtime') and does not elaborate on parameter specifics, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and a clear resource ('comprehensive implementation guide for a specific Rive runtime'), clearly stating the tool's function. It distinguishes from sibling tools like search_rive_docs or get_api_reference by focusing on the implementation guide aspect.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when an implementation guide for a runtime is needed, but it does not explicitly state when to prefer this tool over siblings such as get_tutorials or get_api_reference, nor does it mention exclusions. The context is clear but lacks explicit guidance on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tutorialsA
Find and access Rive tutorials by topic, difficulty, or runtime. Great for learning specific features or implementation patterns.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of tutorials to return (default: 10) | |
| topic | No | Tutorial topic or search term. Examples: "getting started", "state machine", "React integration", "bone animation" | |
| runtime | No | Filter by runtime platform. Leave empty for general tutorials. | |
| difficulty | No | Filter by difficulty level. Default: "all" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden of behavioral disclosure. It states that the tool finds and accesses tutorials and mentions filtering dimensions, but does not disclose return format, whether full content is returned, default limits, or potential side effects. This adds some behavioral context but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the core purpose and a concrete use case. No filler or redundancy. Every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a simple purpose with four documented optional parameters and no output schema. The description covers the core use case and the filtering options. It lacks explicit exclusions or clarification about return values, but it is reasonably complete for a straightforward tutorial search/access tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% parameter description coverage, so the baseline is 3. The description mentions the same filter dimensions (topic, difficulty, runtime) but adds no additional semantic detail beyond what the schema already provides, such as value formatting or interplay between filters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Find and access'), a specific resource ('Rive tutorials'), and the filtering dimensions ('by topic, difficulty, or runtime'). This clearly distinguishes it from sibling tools like search_rive_docs or get_rive_doc_content, which focus on general docs or content retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'Great for learning specific features or implementation patterns' provides an implicit use context. While it does not explicitly name alternative tools or exclusion criteria, the description makes it clear this is the tool for tutorials, which is sufficient for a simple lookup tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_editor_featuresB
Browse Rive editor features and capabilities. Shows tools, constraints, animation features, and design capabilities available in the Rive editor.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by feature category. Use "animation" for animation tools, "constraints" for layout constraints, "state-machines" for interactive logic. Default: "all" | |
| includeDetails | No | Include detailed descriptions and usage information. Default: true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description implies a read-only browsing behavior ('Shows tools...') and lists some content categories, providing a basic sense of what to expect. However, with no annotations, it does not disclose potential limitations, output format, or whether the data is static or dynamic, though for a listing tool this is a moderate gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly written sentence with no wasted words. It front-loads the action and resource, making it immediately scannable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is relatively simple with no output schema, and the description conveys the core purpose. However, it omits mention of the full filterable category set (state-machines, timeline, bones, interface) and the includeDetails parameter, leaving some richness to be inferred from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no additional parameter meaning. It mentions categories (tools, constraints, animation) which loosely align with the schema enum but does not enrich the parameter descriptions beyond what the schema already provides, earning the baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Browse') and identifies the resource ('Rive editor features and capabilities'), listing example content areas. It distinguishes the tool from sibling documentation and runtime tools, though it could more explicitly differentiate from search_rive_docs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives like search_rive_docs or get_runtime_guide. The description simply states what it shows without contextual direction or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_runtimesA
List all available Rive runtime platforms with their details, status, and links. Essential for discovering which runtimes are available and their current support status.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Filter by runtime status. "stable" for production-ready, "community" for community-maintained. Default: "all" | |
| platform | No | Filter by platform type. "web" includes Web/React, "mobile" includes iOS/Android/Flutter, "game" includes Unity/Unreal. Default: "all" | |
| includeDetails | No | Include detailed information about each runtime. Default: true |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. It says the tool lists runtimes with details/status/links, but does not mention side effects (though likely none), authentication needs, or output format specifics. This is sufficient for a simple read operation but lacks additional context such as sorting or pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary action and resource. No wasted words, and the second sentence reinforces the tool's value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and annotations, the description adequately covers the tool's main purpose and result content. The rich parameter schema fills in filter details. It could be improved by noting that results can be filtered or that includeDetails defaults to true, but overall it is complete for a straightforward list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage of parameters with detailed descriptions for each (status, platform, includeDetails). The tool description itself adds no parameter-specific information, so it does not exceed the baseline expected when the schema is comprehensive.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description begins with a specific verb ('List') and a clear resource ('available Rive runtime platforms'), and specifies what is returned ('details, status, and links'). This clearly distinguishes the tool from sibling tools that focus on docs, guides, or features.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states the tool is 'Essential for discovering which runtimes are available and their current support status,' providing clear usage context. However, it does not explicitly mention when not to use it or name alternative tools, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_rive_docsA
Search Rive documentation for animations, runtimes, editor features, and guides. Best for finding specific features, implementation details, or troubleshooting. Use specific terms like "state machine", "timeline", "React runtime", or "bone constraints".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return (default: 10, max: 50) | |
| query | Yes | Search query for Rive documentation. Examples: "React runtime setup", "state machine events", "timeline animation", "bone constraints", "Flutter integration", "editor interface". | |
| runtime | No | Filter by specific runtime platform. Leave empty to search all runtimes. | |
| category | No | Filter by documentation category. Use "runtimes" for app integrations, "editor" for design tools, "game-runtimes" for Unity/Unreal. Default: "all". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does not specify return format, result structure, pagination behavior, or whether snippets are included. The description only states the purpose, leaving the agent to infer behavioral traits of a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, followed by concise usage guidance. Every sentence adds value with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with no output schema, the description covers the search domain, use case, and query examples. However, it does not explain what the results look like (e.g., list of doc titles, snippets) or how to optimally use the runtime/category filters. It is minimally adequate but leaves gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already documents all parameters with detailed examples. The description adds a general suggestion to use specific terms, but this is largely redundant with the schema's query examples. It meets the baseline but adds minimal new value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Search' and the resource 'Rive documentation', specifying the scope with examples like animations, runtimes, editor features, and guides. It distinguishes itself from siblings (e.g., get_rive_doc_content, list_runtimes) by focusing on discovery via search rather than retrieval or listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit context on when to use: 'Best for finding specific features, implementation details, or troubleshooting.' It also gives concrete query term suggestions. However, it does not explicitly mention when not to use or name alternative tools, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
8 tool updates
v1.0.0- First observed
check_feature_support - First observed
get_api_reference - First observed
get_rive_doc_content - First observed
get_runtime_guide - First observed
get_tutorials - First observed
list_editor_features - First observed
list_runtimes - First observed
search_rive_docs
TDQS
Each tool targets a distinct documentation need: search, content retrieval, runtime listing, runtime guides, editor features, tutorials, feature support checks, and API references. No two tools appear to serve the same purpose.
All tool names follow the same snake_case verb_noun pattern (search_, get_, list_, check_). The verbs and objects are clearly structured, making the API easy to predict.
With 8 tools, the server is well-scoped for a documentation-focused MCP. Each tool covers a meaningful aspect of documentation access without redundancy or bloat.
The tool set covers the full documentation lifecycle: discovery (search, tutorials), detailed content (get_rive_doc_content, get_runtime_guide, get_api_reference), and reference data (list_runtimes, list_editor_features, check_feature_support). No significant gaps are apparent.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Search and query nTop's knowledge base and engineering guides from AI applications.
Model Context Protocol server for Studex tools, notifications, and profile integrations
Provides access to Google's public developer documentation.
Access and maintain design system docs, tokens, components, skills, and contexts across any project.
Related MCP Servers
- FlicenseBqualityDmaintenanceEnables AI assistants to interact with Figma files through the ModelContextProtocol, allowing viewing, commenting, and analyzing Figma designs directly in chat interfaces.52,160213-
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol implementation that enables AI-powered access to documentation resources, featuring URI-based navigation, template matching, and structured documentation management.9MIT
- AlicenseAqualityDmaintenanceProvides AI assistants with direct access to the complete Godot Engine documentation, including classes, tutorials, and features. It enables developers to retrieve and analyze official documentation through natural language interfaces using the Model Context Protocol.2MIT
- AlicenseNot gradedqualityDmaintenanceProvides a standardized interface for interacting with Neon's tools and services through a unified API via the Model Context Protocol.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/StormXX/rive-docs-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server