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 to127.0.0.1. Also accepts comma-separatedROBOT_JSONRPC_BIND.--port PORT: TCP port (default8271orROBOT_JSONRPC_PORT).--mode {tcp,pipe}: Server mode (tcptoday;pipe/stdionot implemented yet).--pipe-name NAME: Pipe name for future pipe mode (defaultrobot_jsonrpcremote_pipeorROBOT_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-valias here, since-vis--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 totcp).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)
| File | Size | Uploaded | |
|---|---|---|---|
| robotframework_jsonrpcremote_server-0.2.0.tar.gz | 15.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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}
|