๐ Quickstart
How to run SimpleTool Server on your machine in minutes
๐ Run SimpleTool Server on your machine in minutes
There are three main ways to run SimpleTool Server:
- Using Docker Compose (recommended for most users) ๐ณ
- Using Docker directly (more control over container settings) ๐
- Running the Python code directly (better for development and customization) ๐
๐ณ Option 1: Docker Compose (Recommended)
The Docker Compose setup provides a fully configured container with:
- ๐ฅ๏ธ SimpleTool Server with FastAPI
- ๐ SSH access
- ๐ผ๏ธ Desktop environment (Xfce) accessible via built-in noVNC
All 3 elements are initialized and run in a single container using supervisord
.
You can check status of each element by running:
๐ Prerequisites
- Docker ๐ณ
- Docker Compose ๐ฆ
๐ Steps
-
Clone the repository ๐ฅ
-
Configure environment variables (optional) โ๏ธ
The default configuration in
docker-compose.yaml
works out of the box, but you can modify any of these settings:use allready build image from ghcr.io if you dont whant to use
Dockerfile
: -
Start the server ๐
-
Access the server ๐
- ๐ API Server: http://localhost:8000
- ๐ Swagger UI: http://localhost:8000/docs
- ๐ฅ๏ธ Web Desktop (noVNC): http://localhost:6901 (password:
vncpassword
) - ๐ SSH:
ssh -p 2222 appuser@localhost
(password:appuser
)
๐ Stopping the server
๐ Option 2: Manual Docker Setup
If you need more control over your Docker container or donโt want to use Docker Compose, you can use the Docker CLI directly.
๐ Prerequisites
- Docker ๐ณ
๐ Steps
Method A: Pull from GitHub Container Registry (Recommended)
-
Pull the image from GHCR ๐ฅ
-
Run the container ๐
Method B: Build from Source
-
Clone the repository ๐ฅ
-
Build the Docker image ๐จ
-
Run the container ๐
๐ Access the server
- ๐ API Server: http://localhost:8000
- ๐ Swagger UI: http://localhost:8000/docs
- ๐ฅ๏ธ Web Desktop (noVNC): http://localhost:6901 (password:
vncpassword
) - ๐ SSH:
ssh -p 2222 appuser@localhost
(password:appuser
)
๐ Stopping and removing the container
๐ Option 3: Python Direct Mode
Running directly with Python is ideal for development, debugging, or when you donโt need the full container with desktop environment.
๐ Prerequisites
- Python 3.10+ installed ๐
- Git ๐ฅ
๐ Steps
-
Clone the repository ๐ฅ
-
Set up Python environment ๐ ๏ธ
-
Configure environment variables (optional) โ๏ธ
Create a
.env
file in thesrc/server
directory: -
Run the server ๐
Or use the convenience script:
-
Access the server ๐
- ๐ API Server: http://localhost:8000
- ๐ Swagger UI: http://localhost:8000/docs
โ Verifying Your Installation
To verify that the server is running correctly, check these endpoints:
-
Health check ๐ฉบ
-
Ping test ๐
-
View available tools ๐ง
Probably will be empty, because we dont have any tools yet.
๐ฎ Next Steps
Once your server is running:
- ๐ View the Swagger UI at
/docs
to explore API endpoints - ๐ง Check the available MCP tools mapped to OpenAPI standard at
/tools/openapi.json
(and this path you can use astools
forOpenWebUI
) - ๐ก Connect to the server via the SSE endpoint at
/sse
for real-time communication