Skip to main content

Robot Framework MCP Server

A Model Context Protocol (MCP) server for Robot Framework test automation with custom features

Robot Framework Server MCP server

Features

  • 🤖 Generate Robot Framework test cases with SeleniumLibrary
  • 📄 Create page object models for web testing
  • ⚡ Advanced Selenium keywords for common web interactions
  • 📸 Screenshot capabilities and performance monitoring
  • 🎯 Input validation and configurable selectors
  • 📊 Performance monitoring and metrics collection
  • 🔄 Data-driven testing templates
  • 🌐 API integration testing capabilities

Quick Demo Video

https://github.com/user-attachments/assets/47ef8f7b-e3f5-413c-b09f-40168a9d4b44

Prerequisites

  • Python 3.10 or higher
  • Node.js 14.0 or higher (for npx method)
  • UV (for UV method - optional but recommended)
  • Git (for installation from repository)

Installation & Usage

Method 1: Using npx (Node.js Package Manager)

Add to your MCP client configuration (e.g., mcp.json) in your VS code or VS code insider:

{
  "servers": {
    "robotframework-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "git+https://github.com/sourcefuse/robotframework-MCP.git",
        "--project-dir=/path/to/your/project"
      ],
      "type": "stdio"
    }
  }
}

Method 2: Install from PyPI

# Install the package
pip3 install robotframework-mcp

# Run the MCP server
robotframework-mcp

For MCP Clients (VS code or VS code inside, etc.):

{
  "mcpServers": {
    "robotframework-mcp": {
      "command": "robotframework-mcp",
      "type": "stdio"
    }
  }
}

Method 3: Using UV

First install UV:

# Install UV (choose one method)
curl -LsSf https://astral.sh/uv/install.sh | sh  # Unix/macOS
# OR
pip install uv  # Any platform
# OR on Windows PowerShell (as Administrator)
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

Then add to your MCP configuration:

{
  "servers": {
    "robotframework-mcp": {
      "command": "uv",
      "args": [
        "run",
        "--with",
        "git+https://github.com/sourcefuse/robotframework-MCP.git",
        "python",
        "-c",
        "import mcp_server; mcp_server.main()"
      ],
      "type": "stdio"
    }
  }
}

Method 4: Clone Repository (Development/Local Setup)

For development or when you want to modify the source code:

# Clone the repository
git clone https://github.com/sourcefuse/robotframework-MCP.git
cd robotframework-MCP

# Create virtual environment
python3 -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Run the MCP server directly
python mcp_server.py

For MCP Clients (VS Code, Claude Desktop, etc.):

{
  "servers": {
    "robotframework-mcp": {
      "command": "python",
      "args": ["/path/to/cloned/robotframework-MCP/mcp_server.py"],
      "type": "stdio"
    }
  }
}

Or using the Node.js wrapper from cloned repo:

{
  "servers": {
    "robotframework-mcp": {
      "command": "node",
      "args": [
        "/path/to/cloned/robotframework-MCP/bin/robotframework-mcp.js",
        "--project-dir=/path/to/your/project"
      ],
      "type": "stdio"
    }
  }
}

Available Tools

The MCP server provides the following comprehensive tools for Robot Framework test automation:

🔧 Core Test Generation

  • create_login_test_case(url, username, password, template_type="appLocator") - Generate validated login test with configurable selectors
  • create_page_object_login(template_type="appLocator") - Generate login page object model with validation
  • create_data_driven_test(test_data_file="test_data.csv") - Generate data-driven test templates
  • create_api_integration_test(base_url, endpoint, method="GET") - Generate API + UI integration tests

⚡ Advanced Keywords

  • create_advanced_selenium_keywords() - Generate advanced SeleniumLibrary keywords (dropdowns, checkboxes, file uploads, alerts, etc.)
  • create_extended_selenium_keywords() - Generate extended keywords with screenshots, performance monitoring, and window management

📊 Performance & Monitoring

  • create_performance_monitoring_test() - Generate comprehensive performance testing with metrics collection

🔍 Validation & Syntax

  • validate_robot_framework_syntax(robot_code) - Validate Robot Framework syntax and provide improvement suggestions

📋 Template Options

The server supports multiple selector templates for different applications:

  • appLocator (default) - For web apps
  • generic - Generic web application selectors
  • bootstrap - Bootstrap-based applications

🎯 Input Validation

All tools include comprehensive input validation:

  • URL validation with protocol checking
  • Credential sanitization and length limits
  • Selector format validation
  • Safe variable substitution in templates

🤝 Contributing

Contributions are welcome! To contribute:

  • Fork the repository
  • Create a new branch
  • Submit a pull request with a detailed description

📬 Contact

Name: Meenu Rani Email: meenu.rani@sourcefuse.com GitHub: meenurani1

License

This project is licensed under the MIT License - see the LICENSE file for details.

Copyright (c) 2025 Sourcefuse

Metadata

Release files for robotframework-mcp 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for robotframework-mcp 1.2.0
File Size Uploaded Provenance
robotframework_mcp-1.2.0.tar.gz 705.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for robotframework-mcp 1.2.0
File Interpreter ABI Platform
robotframework_mcp-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / robotframework_mcp-1.2.0.tar.gz

Download URL robotframework_mcp-1.2.0.tar.gz
Size 705.6 kB
Tags Source
SHA-256 checksum
How to use checksums
337b82d607aacd10c811e80d18f43fd44d91e61b6b82bf6c6c50c400dc110c96
BLAKE2b-256 checksum
How to use checksums
ab465a179bc152fbe682a907dfb19b14b1c15f80d790798d9c58fb597377d0e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Release files / robotframework_mcp-1.2.0-py3-none-any.whl

Download URL robotframework_mcp-1.2.0-py3-none-any.whl
Size 880.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb169b0cc3b0169dd38c54f2972edba10ea3e0717fb19d38a4aae775598f4922
BLAKE2b-256 checksum
How to use checksums
79512fe62e0aea896afe0789a598f4eb3592a13990957d9962309c5cac1c3e05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.9

Security for robotframework-mcp 1.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page