MCP server for CloudSense package upgrade assessment, analysis, and impact verification.
Project description
CloudSense Upgrade Compass
MCP server for CloudSense package upgrade assessment, analysis, and impact verification.
What it does
Given a Salesforce org with CloudSense packages installed, this MCP server:
- Discovers installed packages and their versions
- Pulls customer metadata (Apex, LWC, Aura, objects, flows, etc.)
- Clones CloudSense package repos for from-version and to-version
- Runs package diff analysis (breaking changes, new features, bug fixes)
- Analyzes customer codebase impact (which customer files reference changed APIs)
- Verifies API compatibility (signature-level SAFE/BREAKING verdicts)
- Maps test coverage gaps (which impacted files lack test coverage)
- Generates a comprehensive upgrade report with phasing, effort, and risk
Prerequisites
- Python 3.10+
- Salesforce CLI (
sf) installed - GitHub CLI (
gh) installed or SSH keys configured
Installation
# Via uvx (recommended)
uvx cloudsense-upgrade-compass
# Or install locally for development
uv pip install -e ".[dev]"
Configuration
Cursor IDE
Go to Settings > MCP Servers and add:
{
"mcpServers": {
"cloudsense-upgrade-compass": {
"command": "uvx",
"args": ["cloudsense-upgrade-compass"]
}
}
}
Claude CLI (terminal)
claude mcp add cloudsense-upgrade-compass -- uvx cloudsense-upgrade-compass
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"cloudsense-upgrade-compass": {
"command": "uvx",
"args": ["cloudsense-upgrade-compass"]
}
}
}
Available Tools
| Tool | Description |
|---|---|
init_assessment |
Initialize upgrade assessment project. Creates SFDX project, validates prerequisites (sf CLI, GitHub access), checks org authorization, detects production vs sandbox. |
get_installed_packages |
Discover all installed packages in the org. Identifies CloudSense packages, flags cloud service dependencies (CSPOFA, cscfga, csslm), writes installed-packages.json. |
get_customer_metadata |
Pull customer metadata (Apex, LWC, Aura, VF, objects, flows, validation rules, static resources, permissions) from the org. Adaptive batching handles 10K file limit via binary split. |
get_managed_objects |
Retrieve CS managed package objects (__c, __mdt) that wildcard retrieval misses. Discovers via sf sobject list, excludes ChangeEvent/History/Share/Feed, retrieves in adaptive batches. |
get_cs_settings |
Discovers CS custom settings from retrieved metadata, describes fields via sf sobject describe, exports all setting values via SOQL queries. Writes per-setting JSON files. |
get_object_customizations |
Post-processes CS managed objects to find customer-added fields, validation rules, record types. Compares field namespaces against object namespaces to identify customizations. |
get_repo_mapping |
Maps installed CS packages to GitHub repos using cloudsense.map, .gitmodules, AND apex-packages/README.md. Enriches with branches, deprecation, R38 status, customer usage, migration complexity, cloud service links. Produces version-ref-map.json with pre-resolved from/to git refs and editable overrides. Falls back to GitHub search for unmapped packages. Copies 2nd Brain reference docs for Phase C. |
clone_package_repos |
Reads version-ref-map and clones repos at from/to refs. Respects manual overrides. Skips deprecated/identical/empty-code packages. Discovers new dependencies from target version sfdx-project.json. Updates ref-map with verified status. |
Development
# Clone and install
git clone <repo-url>
cd cloudsense-upgrade-compass
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
# Run tests
pytest
# Run server locally
python -m cloudsense_upgrade_compass.server
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudsense_upgrade_compass-0.9.4.tar.gz.
File metadata
- Download URL: cloudsense_upgrade_compass-0.9.4.tar.gz
- Upload date:
- Size: 45.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
436f78cc5064b85a35c8fe7e95a12f81face905cd34ee5316b9694be542a19ef
|
|
| MD5 |
e826096dcba642c41ee125f709837597
|
|
| BLAKE2b-256 |
37dfa3c004cb8ff9e34156eaf7776ee47a7cdc57a06eec146aa62520ea94b0cb
|
File details
Details for the file cloudsense_upgrade_compass-0.9.4-py3-none-any.whl.
File metadata
- Download URL: cloudsense_upgrade_compass-0.9.4-py3-none-any.whl
- Upload date:
- Size: 59.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
571bd9f5b6a55147ad647da9ddd0650125bb997873c9598371e09d79a1c68d28
|
|
| MD5 |
6fde3726d59843fdff5c28667f762954
|
|
| BLAKE2b-256 |
f0e70aef3446ae34f6543ebecb1c37dfdde6e5fa6ca1fa39d1ea6eaa0c33aece
|