phonelink-mcp-server
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., "@phonelink-mcp-serverShow me my recent text messages."
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.
phonelink-mcp-server
MCP server that reads and interacts with the Phone Link (MyPhone) Windows app via UI Automation.
Since Microsoft doesn't offer public APIs for Phone Link, this server scrapes the UI using PowerShell + .NET's System.Windows.Automation.
Features
Tool | Type | Description |
| Read | Connection status + phone info |
| Read | List conversations or read a specific chat |
| Read | Call history (incoming/outgoing/missed) |
| Read | Phone notifications |
| Read | Photo gallery metadata |
| Read | Debug: dump full UI automation tree |
| Write | Send an SMS via the Phone Link UI |
| Write | Initiate a phone call |
| Write | Launch Phone Link if not running |
Related MCP server: precision-desktop
Requirements
Windows 10/11 with Phone Link installed and configured
Node.js >= 18
PowerShell (Windows PowerShell 5.1+ or PowerShell Core 7+)
Phone connected and paired in Phone Link
Setup
cd phonelink-mcp-server
npm install
npm run buildClaude Desktop Configuration
Add to your claude_desktop_config.json:
{
"mcpServers": {
"phonelink": {
"command": "node",
"args": ["C:/path/to/phonelink-mcp-server/dist/index.js"],
"env": {
"PHONELINK_PS_EXECUTABLE": "powershell.exe"
}
}
}
}Note: Use
pwsh.exeinstead ofpowershell.exeif you have PowerShell Core installed (recommended for better performance).
How It Works
Claude ←→ MCP (stdio) ←→ Node.js Server ←→ PowerShell Scripts ←→ UIAutomation ←→ Phone Link UIClaude calls an MCP tool (e.g.,
phonelink_get_messages)The Node.js server executes the corresponding PowerShell script
The PowerShell script uses .NET's
System.Windows.Automationto:Find the Phone Link window
Navigate to the correct tab
Traverse the UI element tree
Extract text, names, and metadata
Results are returned as JSON through the MCP protocol
Environment Variables
Variable | Default | Description |
|
| PowerShell executable path |
Troubleshooting
"Phone Link window not found"
Make sure Phone Link is running (use
phonelink_launch_appfirst)Check that Phone Link's window title matches expected names. Use
phonelink_inspect_uito debug.The server searches for: "Phone Link", "Collegamento al telefono", "Il tuo telefono", "Your Phone"
UI elements not found
Phone Link updates may change the UI structure. Use
phonelink_inspect_uito see current elements.Try increasing
max_depthin inspect_ui to find deeper elements.The PowerShell scripts include multi-language support (EN, IT, DE, ES) but your locale might use different strings.
Slow responses
UI Automation traversal can be slow, especially with high
max_depth.Keep
max_depthat 10-12 for most operations.The first call after launching Phone Link may be slower while the UI loads.
Permission issues
PowerShell must run with sufficient privileges to use UIAutomation.
If running as a service, ensure the service account has access to the desktop session.
Limitations
UI-dependent: Changes to Phone Link's UI can break scraping. Use
inspect_uito adapt.Single language per session: Element names depend on the Windows display language.
No photo download: The photos tool lists metadata but cannot export actual image files.
Sequential only: Only one tool should run at a time (concurrent UI automation will conflict).
Foreground required: Phone Link window must be visible (not minimized) for some operations.
Development
npm run dev # Watch mode
npm run build # Build once
npm start # Run serverLicense
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Heartran/phonelink-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server