rexrk/ScoutlyMCP
If you are the rightful owner of ScoutlyMCP 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.
ScoutlyMCP is a Model Context Protocol (MCP) server designed to facilitate the retrieval and analysis of SMS messages from Android devices using ADB, enabling seamless integration with AI assistants.
ScoutlyMCP
ScoutlyMCP is a Model Context Protocol (MCP) server that enables AI assistants to retrieve SMS messages from Android devices via ADB (Android Debug Bridge). This tool bridges your Android SMS inbox with AI assistants, allowing them to read and analyze your text messages when needed.
Features
- š SMS Retrieval: Fetch latest SMS messages from Android devices
- š¤ MCP Integration: Compatible with MCP-enabled AI assistants
- š± ADB-based: Uses Android Debug Bridge for secure device communication
- ā” Fast Processing: Efficiently parses and formats SMS data
- š Structured Output: Returns well-formatted JSON data with timestamps
Prerequisites
- Python 3.12 or higher
- Android Debug Bridge (ADB) installed and accessible in PATH
- Android device with USB debugging enabled
- Connected Android device via USB
Installing ADB
Ubuntu/Debian:
sudo apt install android-tools-adb
macOS:
brew install android-platform-tools
Windows: Download from Android SDK Platform Tools
Installation
-
Clone the repository:
git clone https://github.com/rexrk/ScoutlyMCP.git cd ScoutlyMCP
-
Install dependencies:
pip install -e .
Setup
Android Device Configuration
-
Enable Developer Options:
- Go to Settings ā About Phone
- Tap "Build Number" 7 times
-
Enable USB Debugging:
- Go to Settings ā Developer Options
- Enable "USB Debugging"
-
Connect and Verify:
adb devices
Your device should appear in the list.
Usage
Standalone Usage
Run the SMS parser directly:
python src/message_parser.py
As MCP Server
Start the MCP server:
python src/main.py
The server will run in stdio mode, ready to receive MCP requests.
MCP Tool Usage
The server exposes one tool:
sms_message
: Retrieve latest SMS messages- Parameter:
limit
(optional, default: 5) - Number of messages to retrieve
- Parameter:
Example Output
[
{
"id": "123",
"address": "+1234567890",
"date": "2024-01-15T10:30:45.000Z",
"body": "Hello! This is a sample SMS message."
},
{
"id": "122",
"address": "contact@example.com",
"date": "2024-01-15T09:15:30.000Z",
"body": "Another message example with multiple lines\nThis continues on the next line."
}
]
Integration with AI Assistants
Claude Desktop
Add to your Claude Desktop MCP configuration:
{
"mcpServers": {
"sms-reader": {
"command": "uv",
"args": [
"run",
"--directory",
"/absolute/path/to/ScoutlyMCP",
"-m",
"src.main"
]
}
}
}
Project Structure
ScoutlyMCP/
āāā src/
ā āāā __init__.py
ā āāā main.py # MCP server entry point
ā āāā message_parser.py # SMS parsing logic
āāā pyproject.toml # Project dependencies
āāā README.md
āāā uv.lock # Lock file for dependencies
Development
Running Tests
# Test SMS parsing functionality
python src/message_parser.py
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
Security Considerations
- Device Access: This tool requires ADB access to your Android device
- SMS Privacy: Only use with trusted AI assistants and secure environments
- Network Security: Ensure your development environment is secure
- Permissions: The tool only reads SMS data, it cannot send messages
Troubleshooting
Common Issues
ADB not found:
Error: ADB not found. Please ensure it is installed and in your system's PATH.
ā Install ADB and add to PATH
Device not connected:
Error executing ADB command
ā Check USB connection and enable USB debugging
No SMS data:
- Verify device has SMS messages in inbox
- Check ADB permissions on device
- Ensure device is unlocked during operation
License
This project is licensed under the MIT License - see the file for details.
Acknowledgments
- Built using FastMCP
- Android Debug Bridge by Google
- Model Context Protocol specification
Support
If you encounter any issues or have questions:
- Open an Issue
- Check existing Discussions
Note: Remember to replace yourusername
with your actual GitHub username when uploading to GitHub.