Skip to main content

robotframework-jsonrpcremote-server

A Robot Framework Remote Server powered by JSON-RPC 2.0. It hosts your existing Robot Framework libraries and exposes them to remote clients such as JsonRpcRemote over a modern, bidirectional protocol.

Features

  • Robot-first: Runs regular Robot Framework libraries without code changes.
  • JSON-RPC 2.0: Uses the same protocol contract as the client package for requests, responses, and log notifications.
  • Live logging: Forwards Robot log messages to the connected client while keywords execute.
  • Efficient core: Designed for multiple concurrent clients.
  • Scoped imports: Restrict which libraries may be imported by passing them explicitly on startup.
  • Configurable transport: TCP is implemented today; pipe/stdio modes are wired but not implemented yet.

Installation

pip install robotframework-jsonrpcremote-server

Requires Python >= 3.10 and Robot Framework >= 7.0.

Quick start (TCP)

Expose one or more Robot Framework libraries over TCP (default port 8271, default bind 127.0.0.1).

robot-jsonrpcremote-server --bind 0.0.0.0 --port 8271 MyLibrary

Then point your client library to tcp://<host>:8271:

*** Settings ***
Library    JsonRpcRemote    uri=tcp://127.0.0.1:8271    library_name=MyLibrary

CLI options

robot-jsonrpcremote-server [options] LIBRARY [LIBRARY ...]
  • --bind ADDRESS (repeatable): Address(es) to bind. Defaults to 127.0.0.1. Also accepts comma-separated ROBOT_JSONRPC_BIND.
  • --port PORT: TCP port (default 8271 or ROBOT_JSONRPC_PORT).
  • --mode {tcp,pipe}: Server mode (tcp today; pipe/stdio not implemented yet).
  • --pipe-name NAME: Pipe name for future pipe mode (default robot_jsonrpcremote_pipe or ROBOT_JSONRPC_PIPE_NAME).
  • --pythonpath/-P PATH (repeatable): Additional directories made importable before loading libraries, like robot's --pythonpath. Lets you serve libraries that live outside the installed packages.
  • --variable name:value (repeatable): Set an individual Robot variable, like robot's --variable. (No -v alias here, since -v is --verbose.)
  • --variablefile/-V PATH (repeatable): Load variables from a file, like robot's --variablefile.
  • --outputdir/-d DIR: Directory for Robot output files, like robot's --outputdir.
  • -v/--verbose: Enable debug logging.
  • --version: Show version.
  • Positional LIBRARY: One or more libraries allowed to load. If provided, only these are accepted by clients.

Environment variables

  • ROBOT_JSONRPC_MODE: Default server mode (fallback to tcp).
  • ROBOT_JSONRPC_BIND: Comma-separated bind addresses.
  • ROBOT_JSONRPC_PORT: Default port.
  • ROBOT_JSONRPC_PIPE_NAME: Default pipe name placeholder.

License

Apache-2.0

Metadata

Release files for robotframework-jsonrpcremote-server 0.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-jsonrpcremote-server 0.2.0
File Size Uploaded
robotframework_jsonrpcremote_server-0.2.0.tar.gz 15.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for robotframework-jsonrpcremote-server 0.2.0
File Interpreter ABI Platform
robotframework_jsonrpcremote_server-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 33.7 kB

Release files / robotframework_jsonrpcremote_server-0.2.0.tar.gz

Download URL robotframework_jsonrpcremote_server-0.2.0.tar.gz
Size 15.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2ec0e387758eaff9258130c501a981e48bde45e6e0674b41f3e0859b3784cb10
BLAKE2b-256 checksum
How to use checksums
094b3902dc12dd303c97632fdacf4b9955ba8673e81bcc0ee07d94d38f3ba3c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / robotframework_jsonrpcremote_server-0.2.0-py3-none-any.whl

Download URL robotframework_jsonrpcremote_server-0.2.0-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9695c7bce8ef47e6b37d3d6422e93eb8eb4ffc476a75aaee006591a894c9a33d
BLAKE2b-256 checksum
How to use checksums
3a4aa1fa56676aa370bce1b59859240e20e25a93f26c3d0b68814309fc332ff8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

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