Provides access to Visa's Product Design System resources, including design tokens, component specifications, and usage guidelines for consistent UI development.
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., "@Visa Design System MCP Servershow me the design tokens for buttons"
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.
Visa Design System MCP Server
A Model Context Protocol (MCP) server that provides AI tools with access to Visa's Product Design System resources, including design tokens, component specifications, and usage guidelines.
Table of Contents
Related MCP server: Magic Component Platform (MCP)
Installation
Prerequisites
Node.js 18+
npm or yarn package manager
Install from Source
Install as Global Package
Quick Start
1. Start the Server
2. Test the Server
3. Connect an MCP Client
See MCP Client Setup for detailed configuration instructions.
Configuration
Environment Variables
The server can be configured using environment variables:
Variable | Description | Default | Example |
| Path to design system data files |
|
|
| Logging level |
|
|
| Enable automatic data reloading |
|
|
| Cache time-to-live in seconds |
|
|
| Maximum concurrent requests |
|
|
Configuration File
Create a config.json file in the project root:
CLI Options
Usage
Basic Server Operations
Available MCP Tools
The server exposes the following MCP tools:
Design Token Tools
get-design-tokens- Retrieve design tokens with optional filteringsearch-design-tokens- Search tokens by name or valueget-design-token-details- Get detailed token informationget-design-token-categories- List all token categories
Component Tools
get-components- List all components with optional filteringget-component-details- Get detailed component specificationsget-component-examples- Retrieve component code examplessearch-components- Search components by name or description
Guidelines Tools
get-guidelines- Retrieve design guidelines with optional filteringget-guideline-details- Get detailed guideline informationsearch-guidelines- Search guidelines by content or tags
For detailed API documentation, see API.md.
MCP Client Setup
Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Custom MCP Client
Kiro IDE
Add to your .kiro/settings/mcp.json:
Development
Setup Development Environment
Project Structure
Testing
Adding New Features
Add new MCP tools: Implement in respective service files
Update data schemas: Modify JSON schemas in
src/schemas/Add tests: Create corresponding test files
Update documentation: Update API.md and examples
API Documentation
For comprehensive API documentation including all available tools, parameters, and response formats, see API.md.
For usage examples and integration patterns, see EXAMPLES.md.
Troubleshooting
Common Issues
Server Won't Start
Problem: Server fails to start with "Cannot find module" error
Solution: Build the project first
Problem: Server starts but no tools are available
Solution: Check data path and file permissions
Data Loading Issues
Problem: Design system data not loading
Solution: Verify data file format and location
Problem: File watching not working
Solution: Check file system permissions and enable file watching
MCP Client Connection Issues
Problem: Claude Desktop can't connect to server
Solution: Check configuration and paths
Problem: Tools not appearing in MCP client
Solution: Verify server initialization and tool registration
Performance Issues
Problem: Slow response times
Solution: Optimize caching and data loading
Problem: High memory usage
Solution: Optimize data structures and caching
Debug Mode
Enable debug mode for detailed logging:
Debug output includes:
Server initialization steps
Data loading progress
Tool call details
Cache operations
File watching events
Error stack traces
Log Files
Logs are written to:
Console (stdout/stderr)
Optional log file (configure via
LOG_FILEenvironment variable)
Health Checks
Test server health:
Getting Help
Check the logs: Enable debug logging to see detailed error information
Validate data: Run
npm run validate-datato check data file integrityTest connectivity: Use the health check commands above
Review configuration: Verify all paths and environment variables
Check permissions: Ensure the server has read access to data files
Update dependencies: Run
npm updateto get the latest versions
If you're still experiencing issues, please:
Include debug logs in your issue report
Specify your Node.js version (
node --version)Describe your MCP client setup
Provide your configuration files (with sensitive data removed)
Contributing
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Make your changes
Add tests for new functionality
Run the test suite (
npm test)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request
Development Guidelines
Follow TypeScript best practices
Maintain test coverage above 90%
Update documentation for new features
Follow conventional commit messages
Ensure MCP protocol compliance
License
MIT License - see LICENSE file for details.