pulseengine/studio-mcp
If you are the rightful owner of studio-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The WindRiver Studio MCP Server is a Rust-based server that provides AI assistants with access to WindRiver Studio CLI functionality, focusing on Pipeline Management (PLM) features.
WindRiver Studio MCP Server
A production-ready Model Context Protocol (MCP) server providing AI assistants with secure access to WindRiver Studio CLI functionality, focusing on Pipeline Management (PLM) features.
Features
Core Capabilities
- 🏗️ Pipeline Management: Complete PLM workflow integration
- 🤖 CLI Automation: Automatic Studio CLI download and version management
- 🔐 Secure Authentication: Multi-instance Studio credential management
- ⚡ Intelligent Caching: High-performance caching with smart invalidation
- 📊 Resource Hierarchy: Structured MCP resource access
- 🛠️ Comprehensive Tools: Full pipeline lifecycle management
Production Features
- Multi-platform Support: Native binaries for macOS, Linux, and Windows
- User Isolation: Secure multi-tenant cache and authentication
- Performance Monitoring: Detailed cache metrics and health monitoring
- Sensitive Data Protection: Automatic credential filtering and sanitization
- Error Recovery: Robust error handling with detailed diagnostics
Architecture
The server follows a modular architecture with three main components:
1. CLI Manager (studio-cli-manager)
- Downloader: Handles CLI binary downloads with checksum verification
- Executor: Manages CLI command execution and output parsing
- Version Manager: Tracks available versions and handles updates
2. MCP Server (studio-mcp-server)
- Resource Providers: Expose Studio data as MCP resources
- Tool Providers: Enable actions through MCP tools
- Server Handler: Implements PulseEngine MCP backend interface
3. Shared Types (studio-mcp-shared)
- Configuration: Server and CLI configuration management
- Error Handling: Comprehensive error types and handling
- Protocol Types: WindRiver Studio specific data structures
Resource Hierarchy
studio://
├── plm/ # Pipeline Management
│ ├── pipelines/ # Pipeline listings
│ │ ├── {pipeline-id}/info # Pipeline details
│ │ ├── {pipeline-id}/tasks/ # Pipeline tasks
│ │ └── {pipeline-id}/history # Execution history
│ ├── projects/ # PLM projects
│ └── templates/ # Pipeline templates
├── artifacts/ # Artifact management (planned)
├── vlab/ # Virtual lab (planned)
├── config/ # Server configuration
└── status # Server health status
Installation
Quick Start with npm (Recommended)
Install the latest version globally:
npm install -g @pulseengine/studio-mcp-server@latest
Or run directly without installation:
npx @pulseengine/studio-mcp-server@latest [config-file]
Building from Source
Prerequisites
- Rust 1.70+ with Cargo
- WindRiver Studio access credentials
Build Process
git clone https://github.com/pulseengine/studio-mcp.git
cd studio-mcp
cargo build --release
The binary will be available at target/release/studio-mcp-server
Configuration
Create a configuration file or set environment variables:
{
"connections": {
"default": {
"name": "production",
"url": "https://your-studio-instance.com",
"username": "your-username"
}
},
"cli": {
"download_base_url": "https://distro.windriver.com/dist/wrstudio/wrstudio-cli-distro-cd",
"version": "auto",
"auto_update": true
}
}
Usage
With Claude Desktop
Using npm installation:
Add to your Claude Desktop MCP configuration:
{
"mcpServers": {
"windrive-studio": {
"command": "npx",
"args": ["@pulseengine/studio-mcp-server@latest", "/path/to/config.json"]
}
}
}
Using compiled binary:
{
"mcpServers": {
"windrive-studio": {
"command": "/path/to/studio-mcp-server",
"args": ["/path/to/config.json"]
}
}
}
MCP Client Integration
The server works with any MCP-compatible client:
- Claude Desktop: Official Claude app with MCP support
- VS Code MCP Extension: Development environment integration
- Custom MCP Clients: Using MCP protocol libraries
Available Tools
Pipeline Management
plm_list_pipelines- List all pipelines, optionally filtered by projectplm_get_pipeline- Get detailed pipeline informationplm_run_pipeline- Start pipeline executionplm_stop_pipeline- Stop running pipelineplm_list_tasks- List tasks for a pipelineplm_get_task- Get task details and statusplm_get_task_logs- Retrieve task execution logs
System Information
studio_status- Get server and CLI statusstudio_version- Version informationcli_info- Detailed CLI installation info
Development Status
✅ Completed Features
- Core MCP Server: Full PulseEngine MCP integration
- CLI Management: Automatic download, version management, and execution
- Pipeline Management: Complete PLM resource and tool providers
- Intelligent Caching: Multi-layer caching with performance monitoring
- Authentication: Secure multi-instance credential management
- Multi-platform Distribution: npm packages for all major platforms
- Automated CI/CD: GitHub Actions with automated version management
🚀 Production Ready
- Performance: Optimized caching reduces API calls by 80%+
- Security: Credential isolation and sensitive data filtering
- Reliability: Comprehensive error handling and recovery
- Monitoring: Built-in health checks and performance metrics
- Documentation: Complete API documentation and examples
📋 Planned Enhancements
- Artifact Management: Direct artifact storage and retrieval
- Virtual Lab Integration: VLab resource management and automation
- Build System Support: LXBS/VXBS integration
- Advanced Monitoring: OpenTelemetry integration and dashboards
- Plugin System: Extensible architecture for custom integrations
Contributing
- Check the GitHub Issues for planned work
- Follow the established code patterns and error handling
- Add tests for new functionality
- Update documentation as needed
License
MIT License - see LICENSE file for details.
Acknowledgments
- Built with the PulseEngine MCP framework
- Designed for WindRiver Studio integration
- Implements the Model Context Protocol