
RevenueCat to Adapty Migration MCP
A Model Context Protocol server that helps users migrate subscription businesses from RevenueCat to Adapty through natural language interactions with LLMs like Claude Desktop.
README
RevenueCat to Adapty Migration MCP
A Model Context Protocol (MCP) server that helps users migrate their subscription business from RevenueCat to Adapty. This MCP provides tools for data export, analysis, and automated migration through natural language interactions with LLMs like Claude Desktop.
Features
- RevenueCat Data Export: Hierarchical export of projects, offerings, packages, products, and entitlements
- Migration Analysis: Assess migration complexity and generate recommendations
- Automated Migration: Create Adapty apps, access levels, and products from RevenueCat data
- Validation: Verify migration success and data integrity
- LLM Integration: Natural language interface for migration tasks
Installation
Prerequisites
- Python 3.8 or higher
- RevenueCat API key (v2)
- Adapty account (email/password for authentication)
Local Installation
-
Clone the repository:
git clone <repository-url> cd rc-adapty-migration-mcp
-
Create a virtual environment:
python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
-
Install the package:
pip install -e .
-
Set up environment variables:
export REVENUECAT_API_KEY="your_revenuecat_api_key"
Configuration
Environment Variables
REVENUECAT_API_KEY
: Your RevenueCat secret API key (required)REVENUECAT_PROJECT_ID
: Optional RevenueCat project IDLOG_LEVEL
: Optional logging level (INFO, DEBUG, etc.)
Adapty Authentication
Important: Adapty uses username/password authentication, not API keys. Your Adapty credentials are provided at runtime when calling migration tools and are not stored permanently.
MCP Configuration
Create an MCP configuration file (e.g., mcp-config.json
):
{
"mcpServers": {
"rc-adapty-migration": {
"command": "rc-adapty-migration-mcp",
"env": {
"REVENUECAT_API_KEY": "your_revenuecat_api_key"
}
}
}
}
Usage
With Claude Desktop
- Configure Claude Desktop to use this MCP server
- Ask natural language questions like:
- "Export my RevenueCat data and analyze the structure"
- "Migrate my RevenueCat setup to Adapty using my email and password"
- "Validate that my migration was successful"
Available Tools
1. Export RevenueCat Data
{
"name": "export_revenuecat_data",
"arguments": {
"output_format": "summary"
}
}
2. Analyze RevenueCat Structure
{
"name": "analyze_revenuecat_structure",
"arguments": {
"analysis_depth": "detailed"
}
}
3. Migrate to Adapty
{
"name": "migrate_to_adapty",
"arguments": {
"adapty_email": "user@example.com",
"adapty_password": "your_password",
"migration_scope": "full"
}
}
Security Note: When using the migration tool, your Adapty credentials are only used for the specific migration operation and are not stored or logged.
Deployment Options
Option 1: Local Installation (Recommended for Testing)
Users install the MCP locally on their machine:
- Install the package using pip
- Configure environment variables (RevenueCat API key only)
- Point their LLM to the local installation
- Provide Adapty credentials at runtime when needed
Pros:
- Full control over data and credentials
- No network dependencies
- Easy to debug and customize
- No hosting costs
- Adapty credentials never stored
Cons:
- Requires technical setup
- Users must manage their own environment
Option 2: Hosted Service
Deploy the MCP as a hosted service:
- Deploy to cloud platform (AWS, GCP, Azure)
- Set up authentication for users
- Provide web interface or API endpoints
Pros:
- No local setup required
- Centralized management
- Easy updates and monitoring
Cons:
- Requires hosting infrastructure
- Security considerations for user credentials
- Network dependencies
Development
Project Structure
rc-adapty-migration-mcp/
├── src/rc_adapty_migration/
│ ├── api/
│ │ ├── revenuecat.py # RevenueCat API client
│ │ └── adapty.py # Adapty API client
│ ├── auth/
│ │ └── credentials.py # Credential management
│ ├── models/
│ │ └── revenuecat.py # Data models
│ ├── tools/ # Migration tools
│ ├── utils/
│ │ └── logging.py # Logging utilities
│ └── server.py # MCP server implementation
├── tests/ # Test files
├── pyproject.toml # Project configuration
└── README.md # This file
Running Tests
# Run all tests
pytest
# Run specific test
pytest tests/test_revenuecat_export.py
# Run with coverage
pytest --cov=src/rc_adapty_migration
Testing the MCP
-
Test RevenueCat export:
python test_revenuecat_full_chain.py
-
Test Adapty migration:
python test_adapty_full_chain.py
Security Considerations
- RevenueCat API Key: Stored in environment variables
- Adapty Credentials: Provided at runtime, never stored
- Network: Use HTTPS for all API communications
- Validation: Validate all user inputs and API responses
- Logging: No sensitive credentials are logged
Troubleshooting
Common Issues
-
"API key not found"
- Ensure
REVENUECAT_API_KEY
environment variable is set - Verify the API key is valid and has proper permissions
- Ensure
-
"Login failed"
- Check Adapty credentials
- Ensure the account has proper permissions
-
"No projects found"
- Verify RevenueCat account has projects
- Check API key permissions
Debug Mode
Enable debug logging:
export LOG_LEVEL=DEBUG
rc-adapty-migration-mcp
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
License
MIT License - see LICENSE file for details
Support
For issues and questions:
- Create an issue on GitHub
- Check the troubleshooting section
- Review the test files for examples
Roadmap
- [ ] Enhanced validation tools
- [ ] Migration rollback functionality
- [ ] Advanced analytics and reporting
- [ ] Multi-project migration support
- [ ] Custom field mapping
- [ ] Migration templates
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.