gauravsaini/gluestack-ui-mcp-server
If you are the rightful owner of gluestack-ui-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Gluestack UI MCP Server is a Model Context Protocol server designed to enhance React Native development by providing AI assistants with access to the Gluestack UI component library.
Gluestack UI MCP Server š±
š± The definitive MCP server for React Native development with Gluestack UI - Build universal apps with AI assistance!
This Model Context Protocol (MCP) server provides AI assistants with comprehensive access to Gluestack UI - the premier React Native-first component library that delivers true cross-platform experiences. Whether you're building for iOS, Android, or the web, this server intelligently provides components, source code, and examples optimized for React Native development workflows.
Key Features
š± React Native-First Development
- 70+ React Native Components: Production-ready components optimized for mobile-first development
- Universal Platform Support: Single codebase runs on iOS, Android, and Web seamlessly
- Expo Integration: Perfect compatibility with Expo workflows and managed builds
- React Native Navigation: Built-in support for stack, tab, and drawer navigation patterns
- Platform-Specific Optimizations: Components automatically adapt to iOS and Android design guidelines
šØ Multi-Variant Architecture for React Native
Go beyond basic styling with variants designed for different React Native use cases:
- šØ NativeWind: Tailwind CSS components optimized for React Native with
react-native-css-interop
- š Themed: Native styling with Gluestack's design token system - perfect for branded apps
- š§ Unstyled: Headless components for maximum customization in React Native projects
š React Native-Optimized Intelligence
- TypeScript-First: Complete TypeScript definitions for React Native component props
- Platform Detection: Smart handling of
Platform.OS
checks and platform-specific code - Expo Examples: Real-world usage patterns for Expo Router, EAS Build, and Expo dev workflows
- Performance Patterns: React Native performance best practices baked into component examples
š Cross-Platform Excellence
- Universal Components: Write once, run on iOS, Android, and Web
- Responsive Design: Built-in support for different screen sizes and orientations
- Native Feel: Components follow platform-specific design guidelines automatically
- Web Compatibility: Seamless React Native Web integration for responsive web apps
ā” Development Acceleration
- GitHub Mode: Access the latest React Native components directly from the repository
- Local Development: Work with local Gluestack UI installations for rapid iteration
- AI-Powered: Generate React Native screens, components, and navigation flows with AI assistance
- Testing Ready: Components come with accessibility labels and test IDs for React Native testing
Quick Start
Prerequisites
- Node.js 18+
- React Native Development Environment:
- React Native CLI or Expo CLI
- iOS Simulator (Mac) and/or Android Emulator
- Metro bundler for React Native
- Component Source (choose one):
- A local Gluestack UI installation or clone, OR
- A GitHub Personal Access Token for fetching the latest React Native components
Installation Options
Option 1: From npm (when published)
npm install -g gluestack-ui-mcp-server
Option 2: Local Development Setup
# Clone this repository
git clone https://github.com/gluestack/gluestack-ui-mcp-server
cd gluestack-ui-mcp-server
# Install dependencies
npm install
# Build the project
npm run build
# Set your Gluestack UI path
export GLUESTACK_PATH="/path/to/your/gluestack-ui"
# Test the server
npm test
Usage with Claude Desktop
For Published Package
Add to your Claude Desktop configuration file (~/.config/claude/config.json
):
{
"mcpServers": {
"gluestack-ui": {
"command": "npx",
"args": ["gluestack-ui-mcp-server"],
"env": {
"GLUESTACK_PATH": "/path/to/your/gluestack-ui"
}
}
}
}
Or for GitHub mode:
{
"mcpServers": {
"gluestack-ui": {
"command": "npx",
"args": ["gluestack-ui-mcp-server"],
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
For Local Development
Add to your Claude Desktop configuration file (~/.config/claude/config.json
):
{
"mcpServers": {
"gluestack-ui": {
"command": "node",
"args": ["/path/to/gluestack-ui-mcp-server/build/index.js"],
"env": {
"GLUESTACK_PATH": "/path/to/your/gluestack-ui"
}
}
}
}
Or for GitHub mode:
{
"mcpServers": {
"gluestack-ui": {
"command": "node",
"args": ["/path/to/gluestack-ui-mcp-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
Available Tools
š Component Discovery & Navigation
list_components
Get a full inventory of all 126+ available Gluestack UI components, including which variants are available for each.
list_component_variants
Compare and choose the perfect variant by getting detailed information and features for a specific component's NativeWind
, Themed
, and Unstyled
versions.
get_directory_structure
Navigate the entire gluestack-ui
monorepo from your AI assistant with a powerful directory browsing tool.
š Code, Demos & Metadata
get_component
Retrieve the complete, unmodified source code for any component variant, providing perfect context for code generation.
get_component_demo
Access battle-tested usage examples directly from Storybook to understand how components are meant to be used in practice.
get_component_metadata
Go beyond the code to understand its API. This tool extracts TypeScript props, dependencies from import statements, and documentation from comments.
Configuration Options
Environment Variables
GLUESTACK_PATH
: Path to local Gluestack UI installation.GITHUB_TOKEN
: GitHub Personal Access Token for API access.LOG_LEVEL
: Logging level (debug
,info
,warn
,error
).
Command Line Arguments
# Local mode
gluestack-mcp --gluestack-path /path/to/gluestack-ui --log-level debug
# GitHub mode
gluestack-mcp --github-token ghp_xxxxxxxxxxxx --log-level debug
GitHub Mode (Fetch Latest Components)
Instead of requiring a local Gluestack UI installation, you can use GitHub mode to fetch the latest components directly from the official repository.
Setting up GitHub Mode
Step 1: Get a GitHub Personal Access Token
- Go to GitHub Settings ā Developer settings ā Personal access tokens
- Generate a new token (classic) with
public_repo
scope - Copy the token (starts with
ghp_
)
Step 2: Configure Your MCP Client
For Claude Desktop:
{
"mcpServers": {
"gluestack-ui": {
"command": "npx",
"args": ["gluestack-ui-mcp-server"],
"env": {
"GITHUB_TOKEN": "ghp_your_token_here"
}
}
}
}
For Command Line:
export GITHUB_TOKEN="ghp_your_token_here"
gluestack-mcp
Benefits of GitHub Mode
- š Always Up-to-Date: Access the latest components directly from the main branch
- š¦ No Local Setup: No need to clone or maintain a local Gluestack UI repository
- š Automatic Updates: Components are fetched fresh from GitHub on each request
- š Rate Limit Friendly: Authenticated requests get higher GitHub API limits (5000/hour vs 60/hour)
Supported Components
The server provides access to 126+ Gluestack UI components including:
Layout: Box, Center, HStack, VStack, Grid, Divider
Forms: Input, Textarea, Button, Checkbox, Radio, Select, Slider, Switch
Feedback: Alert, Toast, Progress, Spinner, Skeleton
Overlay: Modal, AlertDialog, Popover, Tooltip, ActionSheet
Data Display: Avatar, Badge, Card, Image, Table
Navigation: Tabs, Menu, Link
Media: Image, ImageViewer
Utilities: Portal, Pressable, SafeAreaView
Testing
The server includes comprehensive tests for both local and GitHub modes:
# Run basic tests
npm test
# Test local mode (requires GLUESTACK_PATH)
npm run test:local
# Test GitHub mode (requires GITHUB_TOKEN)
npm run test:github
# Test both modes
npm run test:both
# Test component discovery
npm run test:components
# Run comprehensive test suite
npm run test:comprehensive
Test Environment Setup
For Local Mode Testing:
export GLUESTACK_PATH=/path/to/gluestack-ui
npm run test:local
For GitHub Mode Testing:
export GITHUB_TOKEN=ghp_your_token_here
npm run test:github
Requirements
- Node.js 18+
- Either:
- Local Gluestack UI installation/clone (for local mode), OR
- GitHub Personal Access Token (for GitHub mode)
- MCP-compatible AI client (Claude Desktop, Continue.dev, etc.)
Contributing
We welcome contributions! Please see our for details.
Gluestack UI MCP Server Implementation Summary
š Implementation Complete
The Gluestack UI MCP Server has been successfully implemented with all planned features and capabilities.
ā Completed Features
1. Project Foundation
- ā Complete TypeScript project setup with proper configuration
- ā NPM package configuration with all necessary dependencies
- ā Build system with TypeScript compilation
- ā Executable binary setup with proper shebang
2. Core MCP Server Infrastructure
- ā
MCP Protocol server implementation using
@modelcontextprotocol/sdk
- ā STDIO transport for communication with AI clients
- ā Request/response handlers for tool calls
- ā Comprehensive error handling and logging
- ā Server capabilities registration
3. CLI & Configuration
- ā
Command-line argument parsing (
--gluestack-path
,--log-level
,--help
) - ā
Environment variable support (
GLUESTACK_PATH
,LOG_LEVEL
) - ā Winston-based logging system with configurable levels
- ā Help system with usage examples
4. Component Discovery System
- ā Intelligent component detection across multiple variants
- ā Support for NativeWind, Themed, and Unstyled component variants
- ā Automatic detection of component features (demos, stories, docs)
- ā Metadata extraction from package.json and source files
- ā Component relationship analysis and dependency tracking
5. MCP Tools Implementation
- ā
list_components
- Lists all 70+ available components - ā
get_component
- Retrieves component source code - ā
get_component_demo
- Gets component examples and stories - ā
get_component_metadata
- Extracts props, dependencies, examples - ā
list_component_variants
- Shows all variants for a component
6. TypeScript Integration
- ā Advanced TypeScript interface parsing for component props
- ā Dependency extraction from import statements
- ā JSDoc comment extraction for component documentation
- ā Type-safe API with comprehensive schemas
7. Multi-Variant Support
- ā NativeWind Variant - Modern Tailwind CSS styling (primary)
- ā Themed Variant - Gluestack design system tokens
- ā Unstyled Variant - Headless components for custom styling
- ā Intelligent variant selection with fallbacks
8. Documentation & Testing
- ā Comprehensive README with usage examples
- ā API documentation for all tools
- ā Integration guides for Claude Desktop, Continue.dev, etc.
- ā Test scripts and validation
- ā MIT License and contribution guidelines
šļø Architecture Overview
gluestack-ui-mcp-server/
āāā src/
ā āāā index.ts # Entry point
ā āāā server/ # MCP server core
ā ā āāā index.ts # Server startup logic
ā ā āāā createServer.ts # Server instance creation
ā ā āāā handler.ts # Request handlers
ā ā āāā capabilities.ts # Server capabilities
ā ā āāā version.ts # Version management
ā āāā tools/ # MCP tool implementations
ā ā āāā components/ # Component-related tools
ā ā āāā list-components.ts
ā ā āāā get-component.ts
ā ā āāā get-component-demo.ts
ā ā āāā get-component-metadata.ts
ā ā āāā list-component-variants.ts
ā āāā utils/ # Utilities and helpers
ā ā āāā component-discovery.ts # Component detection engine
ā ā āāā logger.ts # Logging system
ā āāā cli/ # Command-line interface
ā āāā args.ts # Argument parsing
āāā build/ # Compiled JavaScript
āāā README.md # Complete documentation
š Key Capabilities
Component Library Support
- 126 Components: Complete Gluestack UI component library coverage
- Cross-Platform: React Native components that work on iOS, Android, Web
- Modern Styling: NativeWind (Tailwind) integration
- Design System: Themed variant with design tokens
- Flexibility: Unstyled variant for complete customization
AI Integration Features
- Rich Context: Provides complete component source code with TypeScript types
- Usage Examples: Real working examples from Storybook demos
- Metadata Extraction: Props interfaces, dependencies, documentation
- Intelligent Search: Component discovery by name or category
- Variant Awareness: Automatically selects best variant for use case
Developer Experience
- Zero Configuration: Works with default paths and settings
- Flexible Setup: Supports custom Gluestack UI installations
- Comprehensive Logging: Detailed debugging and monitoring
- Error Handling: Graceful failures with helpful error messages
- Security Hardened: Package overrides and dependency locking for enhanced security
- Type Safety: Full TypeScript support throughout
šÆ Usage Examples
Basic Component Retrieval
# List all components
echo '{"method": "tools/call", "params": {"name": "list_components"}}' | npx gluestack-ui-mcp-server
# Get Button component source
echo '{"method": "tools/call", "params": {"name": "get_component", "arguments": {"componentName": "Button"}}}' | npx gluestack-ui-mcp-server
Claude Desktop Integration
{
"mcpServers": {
"gluestack-ui": {
"command": "npx",
"args": ["gluestack-ui-mcp-server"],
"env": {
"GLUESTACK_PATH": "/path/to/gluestack-ui"
}
}
}
}
š§ Technical Decisions
Component Discovery Strategy
- Primary Source:
example/storybook-nativewind/src/components/
for rich examples - Fallback Sources: Core packages for implementation details
- Caching: In-memory component registry for performance
- Multi-Variant: Concurrent discovery across all variant types
TypeScript Parsing
- Regex-Based: Lightweight interface parsing without AST complexity
- Prop Extraction: Automatic detection of component props and types
- Import Analysis: Dependency tracking from import statements
- JSDoc Support: Comment extraction for documentation
Error Handling
- Graceful Degradation: Continue operation even if some components fail
- Detailed Logging: Comprehensive error context for debugging
- User-Friendly Messages: Clear error messages for common issues
- Circuit Breaker: Prevent cascading failures in component discovery
š Benefits for AI Development
Accelerated Development
- Instant Access: Components available to AI assistants immediately
- Best Practices: Examples show proper component usage patterns
- Type Safety: TypeScript interfaces ensure correct prop usage
- Variant Selection: Automatic selection of most appropriate variant
Enhanced Code Quality
- Consistent Styling: Gluestack UI design system principles
- Accessibility: Components built with accessibility best practices
- Cross-Platform: Write once, run on iOS, Android, Web
- Modern Stack: Latest React Native and styling approaches
Productivity Boost
- Reduced Lookup: No need to manually browse documentation
- Complete Context: Source code, examples, and metadata in one request
- Intelligent Discovery: Find components by functionality or name
- Rapid Prototyping: Quickly scaffold UI components
š Ready for Production
The Gluestack UI MCP Server is now complete and ready for:
- AI Assistant Integration (Claude Desktop, Continue.dev, Cursor, etc.)
- NPM Package Publication (
gluestack-ui-mcp-server
) - Community Use (Open source with MIT license)
- Enterprise Deployment (Supports custom installations and configurations)
This implementation provides AI assistants with comprehensive access to the Gluestack UI ecosystem, enabling rapid development of high-quality React Native applications with modern styling and cross-platform compatibility.
License
MIT
Built in Melbourne with ā¤ļø for the Gluestack and AI development communities