loading…
Search for a command to run...
loading…
Provides on-demand access to AOSP and Jetpack source code to help AI understand Android framework internals. It features a hybrid architecture using Tree-sitter
Provides on-demand access to AOSP and Jetpack source code to help AI understand Android framework internals. It features a hybrid architecture using Tree-sitter and LSP for precise code extraction, cross-file navigation, and local source indexing.
MCP server for exploring AOSP internals and Jetpack libraries.
When building Android applications, AI tools often rely on outdated training data or incomplete summaries of the Android Framework. This MCP server provides on-demand, precise access to the actual source code (AOSP and AndroidX), enabling the AI to understand complex framework internals like the Activity lifecycle, ViewModel restoration, or Compose internals directly from the truth.
The easiest way to install and keep android-source-explorer up to date is using uv. It handles dependencies (including native ones like Tree-sitter and Cryptography) reliably across platforms.
uv tool install git+https://github.com/mrmike/android-source-explorer-mcp
This will make the android-source-explorer command available globally in your PATH.
After installation, you need to perform an initial sync to fetch the Android source code:
# Sync API 36 (Android 16) and common AndroidX packages
android-source-explorer sync --api-level 36 --androidx "compose,lifecycle,activity"
# (Optional) Download LSP servers for cross-file features
android-source-explorer sync --lsp
Check sync status:
android-source-explorer status
Add the MCP server to your configuration file (e.g., Claude Desktop, Cursor, Gemini CLI).
If installed via uv tool install, the tool is available globally.
Basic Setup:
{
"mcpServers": {
"android-sources": {
"command": "android-source-explorer",
"args": ["serve"]
}
}
}
With LSP Features Enabled:
{
"mcpServers": {
"android-sources": {
"command": "android-source-explorer",
"args": ["serve"],
"env": {
"ANDROID_SOURCE_LSP": "true"
}
}
}
}
If you cloned the repository and want to run it from the source:
{
"mcpServers": {
"android-sources": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/android-source-explorer", "android-source-explorer", "serve"]
}
}
}
The server uses a dual-engine approach to balance speed and intelligence:
To ensure all lookups are instant and offline-ready, the server uses a sync command to pre-fetch sources into a local cache (~/.android-sources/):
android.googlesource.com using git sparse-checkouts.-sources.jar files from the Google Maven repository (dl.google.com/dl/android/maven2/).$ANDROID_HOME sources if available, supplemented by the downloaded cache.| Tool | Engine | Description |
|---|---|---|
search_classes |
Index | Search for classes by glob pattern or substring. |
lookup_class |
FS | Retrieve the full source code for a specific class. |
lookup_method |
Tree-sitter | Extract a precise method body + its Javadoc/annotations. |
list_class_members |
Tree-sitter | List all method and field signatures in a class. |
get_class_hierarchy |
Tree-sitter | Get the inheritance chain (superclass + interfaces). |
search_in_source |
FS/Regex | Search for text/regex across the entire source tree. |
goto_definition* |
LSP | Resolve the cross-file definition of a symbol. |
find_references* |
LSP | Find all usages of a class/method across the whole tree. |
get_type_info* |
LSP | Get documentation and type info via hover data. |
*Requires ANDROID_SOURCE_LSP=true
Apache License 2.0
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"android-source-explorer-mcp-server": {
"command": "npx",
"args": []
}
}
}PRs, issues, code search, CI status
Database, auth and storage
Reference / test server with prompts, resources, and tools.
Secure file operations with configurable access controls.