realtimex-computer-use
A MCP (Model Context Protocol) server that provides computer control tools for AI agents, enabling browser automation and system interactions.
Features
- Open URLs in web browsers
- Support for multiple browsers (Chrome, Firefox, Safari, Edge)
- Open URLs in new tabs or windows
- Retrieve configured credentials for authentication
- Securely type credential fields without exposing values to LLM
- Launch applications across platforms
- Verify application process status
- Graceful fallback to system default browser
- Cross-platform support (Windows, macOS, Linux)
Tools
The server implements the following tools:
Browser Control
- open_browser - Open a URL in the specified browser or system default
- open_browser_new_tab - Open a URL in a new browser tab
- open_browser_new_window - Open a URL in a new browser window
Each tool supports browser selection (chrome, firefox, safari, edge, default) and provides graceful fallback to the system default browser if the specified browser is unavailable.
Credential Management
- get_credentials - Get available credentials for authentication
- type_credential_field - Securely type a credential field value
The credential system enables secure login automation:
get_credentials: Returns credential names and types (configured viaCREDENTIAL_SERVER_URL)type_credential_field: Types credential field values without exposing them in responses or logs
Security: Credential values never appear in conversation history or tool responses.
Application Launcher
- open_application - Launch an application by name
- verify_application - Verify that an application process is running
Cross-platform application launching:
open_application: Launches applications using platform-specific methods (macOS:open, Windows:startfile/start, Linux:xdg-open)verify_application: Checks if a process is running with configurable timeout (macOS/Linux:pgrep, Windows:tasklist)
Installation
Prerequisites
- Python 3.10+
- FastMCP framework
- uv package manager
Install Steps
Install the package:
pip install realtimex-computer-use
Or using uvx for immediate use:
uvx realtimex-computer-use
MCP Client Configuration
To use this server with an MCP-compatible client, configure it to run the server via stdio transport.
Development Configuration (local installation):
{
"mcpServers": {
"realtimex-computer-use": {
"command": "uv",
"args": [
"--directory",
"/path/to/realtimex-computer-use",
"run",
"realtimex-computer-use"
]
}
}
}
Production Configuration (published package):
{
"mcpServers": {
"realtimex-computer-use": {
"command": "uvx",
"args": [
"realtimex-computer-use"
]
}
}
}
Development
Building and Publishing
- Sync dependencies and update lockfile:
uv sync
- Build package distributions:
uv build
- Publish to PyPI:
uv publish
Note: Set PyPI credentials via environment variables or command flags:
- Token:
--tokenorUV_PUBLISH_TOKEN - Username/password:
--username/UV_PUBLISH_USERNAMEand--password/UV_PUBLISH_PASSWORD
Debugging
For the best debugging experience, use the MCP Inspector.
Launch the MCP Inspector via npm:
npx @modelcontextprotocol/inspector uv --directory /path/to/realtimex-computer-use run realtimex-computer-use
The Inspector will display a URL that you can access in your browser to begin debugging.
Usage Examples
Open a URL in the default browser
{
"tool": "open_browser",
"arguments": {
"url": "https://www.python.org"
}
}
Open a URL in Chrome
{
"tool": "open_browser",
"arguments": {
"url": "https://www.python.org",
"browser": "chrome"
}
}
Open a URL in a new tab
{
"tool": "open_browser_new_tab",
"arguments": {
"url": "https://docs.python.org",
"browser": "firefox"
}
}
Get available credentials
{
"tool": "get_credentials",
"arguments": {}
}
Type credential field securely
{
"tool": "type_credential_field",
"arguments": {
"credential_id": "cred_abc123",
"field_name": "username"
}
}
Secure Login Workflow:
- Call
get_credentials()to list available credentials - Navigate to username field and click
- Call
type_credential_field(credential_id, "username") - Navigate to password field and click
- Call
type_credential_field(credential_id, "password") - Submit the form
Configuration: Set CREDENTIAL_SERVER_URL environment variable (defaults to http://localhost:3001)
Launch an application
{
"tool": "open_application",
"arguments": {
"app_name": "Messages"
}
}
Verify an application is running
{
"tool": "verify_application",
"arguments": {
"process_name": "Messages",
"timeout": 5.0
}
}
Application Launch Workflow:
- Call
open_application(app_name)to launch the application - Call
verify_application(process_name, timeout)to confirm it's running - Proceed with automation once verified
Platform Examples:
- macOS:
"Messages","Calculator","Safari" - Windows:
"notepad","calc","explorer" - Linux:
"firefox","gedit","nautilus"
Future Expansion
This package is designed to support additional computer control capabilities:
- Desktop automation (PyAutoGUI integration)
- File system operations
- System information retrieval
- Process management
- Additional credential operations (select, validate)
Architecture
The codebase is organized for maintainability and extensibility:
realtimex-computer-use/
├── fastmcp.json # FastMCP configuration (dependencies)
├── pyproject.toml # Package configuration and metadata
├── smithery.yaml # Smithery MCP registry configuration
└── src/
└── realtimex_computer_use/
├── __init__.py # Package entry point
├── __main__.py # CLI entry point
├── server.py # MCP server initialization and tool registration
└── tools/ # Modular tool implementations
├── __init__.py
├── app_launcher.py # Application launcher tools
├── browser.py # Browser control tools
├── credentials.py # Credential retrieval tools
└── credential_typing.py # Secure credential typing
Configuration Files:
fastmcp.json: Defines FastMCP dependencies and entrypoint (follows FastMCP 2.11.4+ standard)pyproject.toml: Python package metadata, dependencies, and build configurationsmithery.yaml: Configuration for Smithery MCP server registry
Adding New Tools:
- Create a new module in
src/realtimex_computer_use/tools/(e.g.,credentials.py) - Implement tool functions with proper type hints and docstrings
- Register tools in
server.pyusingmcp.tool()(module.function_name)
License
This project is proprietary software. All rights reserved.
Metadata
Release files for realtimex-computer-use 1.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| realtimex_computer_use-1.4.0.tar.gz | 189.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| realtimex_computer_use-1.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 199.7 kB
Release files / realtimex_computer_use-1.4.0.tar.gz
| Download URL | realtimex_computer_use-1.4.0.tar.gz |
|---|---|
| Size | 189.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ddb40ea80b44a5581816d720e18f3a6c44e7202b60017962f3ac0f0a90225824
|
|
BLAKE2b-256 checksum How to use checksums |
40b028e4040090af74c319bc50e663432c4852399d06e81f8472e08339695a17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.16
|
Release files / realtimex_computer_use-1.4.0-py3-none-any.whl
| Download URL | realtimex_computer_use-1.4.0-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d940b63688628e2b2051e6a005c92a91efc0dc14bbdf63b48a3d7ccd2f5206c5
|
|
BLAKE2b-256 checksum How to use checksums |
ee197196739f413253d1057a1dc62ec4b9cdf457ee5e1d425710defdbe4c6351
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.16
|