{"id":30196341,"url":"https://github.com/pulseengine/studio-mcp","last_synced_at":"2026-01-20T17:56:25.455Z","repository":{"id":305617109,"uuid":"1022974645","full_name":"pulseengine/studio-mcp","owner":"pulseengine","description":"🔧 WindRiver Studio MCP Server - A Model Context Protocol server providing AI assistants with access to WindRiver Studio CLI functionality, focusing on Pipeline Management (PLM) features","archived":false,"fork":false,"pushed_at":"2025-08-01T05:55:49.000Z","size":5578,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-08T21:19:46.496Z","etag":null,"topics":["ai-assistant","cli","mcp","model-context-protocol","npm","pipeline-management","pulseengine","rust","studio","windriver"],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pulseengine.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-20T08:54:48.000Z","updated_at":"2025-08-01T05:55:53.000Z","dependencies_parsed_at":"2025-07-21T06:34:10.830Z","dependency_job_id":null,"html_url":"https://github.com/pulseengine/studio-mcp","commit_stats":null,"previous_names":["pulseengine/studio-mcp"],"tags_count":16,"template":false,"template_full_name":null,"purl":"pkg:github/pulseengine/studio-mcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulseengine%2Fstudio-mcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulseengine%2Fstudio-mcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulseengine%2Fstudio-mcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulseengine%2Fstudio-mcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pulseengine","download_url":"https://codeload.github.com/pulseengine/studio-mcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pulseengine%2Fstudio-mcp/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270183606,"owners_count":24541341,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-13T02:00:09.904Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-assistant","cli","mcp","model-context-protocol","npm","pipeline-management","pulseengine","rust","studio","windriver"],"created_at":"2025-08-13T05:18:06.060Z","updated_at":"2026-01-20T17:56:25.441Z","avatar_url":"https://github.com/pulseengine.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WindRiver Studio MCP Server\n\n[![GitHub Release](https://img.shields.io/github/v/release/pulseengine/studio-mcp?label=version)](https://github.com/pulseengine/studio-mcp/releases)\n[![CI Status](https://img.shields.io/github/actions/workflow/status/pulseengine/studio-mcp/rust-ci.yml?branch=main\u0026label=CI)](https://github.com/pulseengine/studio-mcp/actions)\n[![npm version](https://img.shields.io/npm/v/@pulseengine/studio-mcp-server)](https://www.npmjs.com/package/@pulseengine/studio-mcp-server)\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n\nA production-ready Model Context Protocol (MCP) server providing AI assistants with secure access to WindRiver Studio CLI functionality, focusing on Pipeline Management (PLM) features.\n\n## Features\n\n### Core Capabilities\n- **🏗️ Pipeline Management**: Complete PLM workflow integration\n- **🤖 CLI Automation**: Automatic Studio CLI download and version management  \n- **🔐 Secure Authentication**: Multi-instance Studio credential management\n- **⚡ Intelligent Caching**: High-performance caching with smart invalidation\n- **📊 Resource Hierarchy**: Structured MCP resource access\n- **🛠️ Comprehensive Tools**: Full pipeline lifecycle management\n\n### Production Features\n- **Multi-platform Support**: Native binaries for macOS, Linux, and Windows\n- **User Isolation**: Secure multi-tenant cache and authentication\n- **Performance Monitoring**: Detailed cache metrics and health monitoring\n- **Sensitive Data Protection**: Automatic credential filtering and sanitization\n- **Error Recovery**: Robust error handling with detailed diagnostics\n\n## Architecture\n\nThe server follows a modular architecture with three main components:\n\n### 1. CLI Manager (`studio-cli-manager`)\n- **Downloader**: Handles CLI binary downloads with checksum verification\n- **Executor**: Manages CLI command execution and output parsing\n- **Version Manager**: Tracks available versions and handles updates\n\n### 2. MCP Server (`studio-mcp-server`)\n- **Resource Providers**: Expose Studio data as MCP resources\n- **Tool Providers**: Enable actions through MCP tools\n- **Server Handler**: Implements PulseEngine MCP backend interface\n\n### 3. Shared Types (`studio-mcp-shared`)\n- **Configuration**: Server and CLI configuration management\n- **Error Handling**: Comprehensive error types and handling\n- **Protocol Types**: WindRiver Studio specific data structures\n\n## Resource Hierarchy\n\n```\nstudio://\n├── plm/                          # Pipeline Management\n│   ├── pipelines/               # Pipeline listings\n│   │   ├── {pipeline-id}/info   # Pipeline details\n│   │   ├── {pipeline-id}/tasks/ # Pipeline tasks\n│   │   └── {pipeline-id}/history # Execution history\n│   ├── projects/                # PLM projects\n│   └── templates/               # Pipeline templates\n├── artifacts/                   # Artifact management (planned)\n├── vlab/                       # Virtual lab (planned)\n├── config/                     # Server configuration\n└── status                      # Server health status\n```\n\n## Installation\n\n### Quick Start with npm (Recommended)\n\nInstall the latest version globally:\n```bash\nnpm install -g @pulseengine/studio-mcp-server@latest\n```\n\nOr run directly without installation:\n```bash\nnpx @pulseengine/studio-mcp-server@latest [config-file]\n```\n\n### Building from Source\n\n#### Prerequisites\n- Rust 1.70+ with Cargo\n- WindRiver Studio access credentials\n\n#### Build Process\n```bash\ngit clone https://github.com/pulseengine/studio-mcp.git\ncd studio-mcp\ncargo build --release\n```\n\nThe binary will be available at `target/release/studio-mcp-server`\n\n### Configuration\nCreate a configuration file or set environment variables:\n\n```json\n{\n  \"connections\": {\n    \"default\": {\n      \"name\": \"production\",\n      \"url\": \"https://your-studio-instance.com\",\n      \"username\": \"your-username\"\n    }\n  },\n  \"cli\": {\n    \"download_base_url\": \"https://distro.windriver.com/dist/wrstudio/wrstudio-cli-distro-cd\",\n    \"version\": \"auto\",\n    \"auto_update\": true\n  }\n}\n```\n\n## Usage\n\n### With Claude Desktop\n\n#### Using npm installation:\nAdd to your Claude Desktop MCP configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"windrive-studio\": {\n      \"command\": \"npx\",\n      \"args\": [\"@pulseengine/studio-mcp-server@latest\", \"/path/to/config.json\"]\n    }\n  }\n}\n```\n\n#### Using compiled binary:\n```json\n{\n  \"mcpServers\": {\n    \"windrive-studio\": {\n      \"command\": \"/path/to/studio-mcp-server\",\n      \"args\": [\"/path/to/config.json\"]\n    }\n  }\n}\n```\n\n### MCP Client Integration\n\nThe server works with any MCP-compatible client:\n- **Claude Desktop**: Official Claude app with MCP support\n- **VS Code MCP Extension**: Development environment integration\n- **Custom MCP Clients**: Using MCP protocol libraries\n\n### Available Tools\n\n#### Pipeline Management\n- `plm_list_pipelines` - List all pipelines, optionally filtered by project\n- `plm_get_pipeline` - Get detailed pipeline information\n- `plm_run_pipeline` - Start pipeline execution\n- `plm_stop_pipeline` - Stop running pipeline\n- `plm_list_tasks` - List tasks for a pipeline\n- `plm_get_task` - Get task details and status\n- `plm_get_task_logs` - Retrieve task execution logs\n\n#### System Information\n- `studio_status` - Get server and CLI status\n- `studio_version` - Version information\n- `cli_info` - Detailed CLI installation info\n\n## Development Status\n\n### ✅ Completed Features\n- **Core MCP Server**: Full PulseEngine MCP integration\n- **CLI Management**: Automatic download, version management, and execution\n- **Pipeline Management**: Complete PLM resource and tool providers\n- **Intelligent Caching**: Multi-layer caching with performance monitoring\n- **Authentication**: Secure multi-instance credential management\n- **Multi-platform Distribution**: npm packages for all major platforms\n- **Automated CI/CD**: GitHub Actions with automated version management\n\n### 🚀 Production Ready\n- **Performance**: Optimized caching reduces API calls by 80%+\n- **Security**: Credential isolation and sensitive data filtering\n- **Reliability**: Comprehensive error handling and recovery\n- **Monitoring**: Built-in health checks and performance metrics\n- **Documentation**: Complete API documentation and examples\n\n### 📋 Planned Enhancements\n- **Artifact Management**: Direct artifact storage and retrieval\n- **Virtual Lab Integration**: VLab resource management and automation\n- **Build System Support**: LXBS/VXBS integration\n- **Advanced Monitoring**: OpenTelemetry integration and dashboards\n- **Plugin System**: Extensible architecture for custom integrations\n\n## Contributing\n\n1. Check the [GitHub Issues](https://github.com/pulseengine/studio-mcp/issues) for planned work\n2. Follow the established code patterns and error handling\n3. Add tests for new functionality\n4. Update documentation as needed\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## Acknowledgments\n\n- Built with the [PulseEngine MCP framework](https://github.com/pulseengine/mcp)\n- Designed for [WindRiver Studio](https://windriver.com) integration\n- Implements the [Model Context Protocol](https://modelcontextprotocol.io/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpulseengine%2Fstudio-mcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpulseengine%2Fstudio-mcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpulseengine%2Fstudio-mcp/lists"}