Cover image
servidor de rulego
Public

servidor de rulego

Try Now
2025-04-15

Una plataforma de automatización de flujo de trabajo sin dependencia ligera. Admite IPAA, informática de transmisión y capacidades de IA.

3 years

Works with Finder

3

Github Watches

10

Github Forks

23

Github Stars

server

English | 简体中文

Official Website | Docs | Contribution Guide

logo

RuleGo-Server is a lightweight, high-performance, modular, and integration-friendly automation workflow platform built on RuleGo.

It can be used for automation orchestration, iPaaS (Integration Platform as a Service), API orchestration, application orchestration, AI orchestration, data processing, IoT rule engine, AI assistant, and other scenarios.

Features

  • Lightweight: Low memory usage, high performance, simple deployment, ready-to-use, no database required.
  • Rich Components: Over 100 built-in components. Additionally, a component marketplace and rule chain marketplace are provided, supporting dynamic installation.
  • Visualization: Supports visualization of rule chains.
  • Modular: Compile and load on demand.
  • Hot Updates: Workflow supports hot updates.
  • AI Support: Supports large model components. The system automatically registers all components and rule chains as MCP tools for use by AI assistants.
  • Bridge the Last Mile: Third-party system services can be easily encapsulated into MCP tools with the help of RuleGo-Server.

Experience Links

HTTP API

API Documentation

Multi-Tenancy

This project supports multi-tenancy/users, with isolated rule chain data for each user. User data is stored in the data/workflows/{username} directory.

User permission verification is disabled by default, and all operations are performed as the default user. To enable permission verification:

  • Obtain a token through username and password, then access other interfaces using the token. Example:
# Whether to enable JWT authentication for APIs. If disabled, operations will be performed as the default user (admin)
require_auth = true
# JWT secret key
jwt_secret_key = r6G7qZ8xk9P0y1Q2w3E4r5T6y7U8i9O0pL7z8x9CvBnM3k2l1
# JWT expiration time
jwt_expire_time = 43200000
# JWT issuer
jwt_issuer = rulego.cc
# User list
# Configure usernames and passwords in the format username=password[,apiKey]. The apiKey is optional.
# If apiKey is configured, the caller can access other interfaces directly using the apiKey without logging in.
[users]
admin = admin
user01 = user01

The frontend obtains a token through the login interface (/api/v1/login), then accesses other interfaces using the token. Example:

curl -H "Authorization: Bearer token" http://localhost:8080/api/resource
  • Access other interfaces using the api_key method. Example:
# Whether to enable JWT authentication for APIs. If disabled, operations will be performed as the default user (admin)
require_auth = true
# User list
# Configure usernames and passwords in the format username=password[,apiKey]. The apiKey is optional.
# If apiKey is configured, the caller can access other interfaces directly using the apiKey without logging in.
[users]
admin = admin,2af255ea-5618-467d-914c-67a8beeca31d
user01 = user01

Then access other interfaces using the token. Example:

curl -H "Authorization: Bearer apiKey" http://localhost:8080/api/resource

Server Compilation

To save the size of the compiled file, the extension component rulego-components is not included by default. Default compilation:

cd cmd/server
go build .

If you need to include the extension component rulego-components, compile with the with_extend tag:

cd cmd/server
go build -tags with_extend .

Other extension component library tags:

If you need to include multiple extension component libraries at the same time, you can compile with the go build -tags "with_extend,with_ai,with_ci,with_iot,with_etl" tag.

Server Startup

./server -c="./config.conf"

Or start in the background:

nohup ./server -c="./config.conf" >> console.log &

UI

Details: UI Rename the compiled ui directory to editor and place it in the root directory, then run server.

RuleGo-Server-MCP

RuleGo-Server supports MCP (Model Context Protocol). When enabled, the system automatically registers all registered components, rule chains, and APIs as MCP tools. This allows AI assistants (such as Windsurf, Cursor, Codeium, etc.) to directly call these tools through the MCP protocol, achieving deep integration with application systems. Documentation: rulego-server-mcp

Configuration File Parameters

config.conf

# Data directory
data_dir = ./data
# Whitelist for cmd component commands
cmd_white_list = cp,scp,mvn,npm,yarn,git,make,cmake,docker,kubectl,helm,ansible,puppet,pytest,python,python3,pip,go,java,dotnet,gcc,g++,ctest
# Whether to load third-party Lua libraries
load_lua_libs = true
# HTTP server
server = :9090
# Default user
default_username = admin
# Whether to log node execution logs to the log file
debug = true
# Maximum node log size, default 40
max_node_log_size =40
# Resource mapping, supports wildcards, multiple mappings separated by commas, format: /url/*filepath=/path/to/file
resource_mapping = /editor/*filepath=./editor,/images/*filepath=./editor/images
# Node pool file, in rule chain JSON format, example: ./node_pool.json
node_pool_file=./node_pool.json
# Save run log to file
save_run_log = false
# Maximum script execution time
script_max_execution_time = 5000
# Whether to enable JWT authentication for APIs
require_auth = false
# JWT secret key
jwt_secret_key = r6G7qZ8xk9P0y1Q2w3E4r5T6y7U8i9O0pL7z8x9CvBnM3k2l1
# JWT expiration time, in milliseconds
jwt_expire_time = 43200000
# JWT issuer
jwt_issuer = rulego.cc
# MCP server configuration
[mcp]
# Whether to enable the MCP service
enable = true
# Whether to use components as MCP tools
load_components_as_tool = true
# Whether to use rule chains as MCP tools
load_chains_as_tool = true
# Whether to add a rule chain API tool
load_apis_as_tool = true
# Exclude component list
exclude_components = comment,iterator,delay,groupAction,ref,fork,join,*Filter
# Exclude rule chain list
exclude_chains =

# pprof configuration
[pprof]
# Whether to enable pprof
enable = false
# pprof address
addr = 0.0.0.0:6060

# Global custom configuration, components can access values using ${global.xxx}
[global]
# Example
sqlDriver = mysql
sqlDsn = root:root@tcp(127.0.0.1:3306)/test

# User list
# Configure usernames and passwords in the format username=password[,apiKey]. The apiKey is optional.
# If apiKey is configured, the caller can access other interfaces directly using the apiKey without logging in.
[users]
admin = admin,2af255ea5618467d914c67a8beeca31d
user01 = user01,2af255ea5618467d914c67a8beeca51c

Contact Us

Email: rulego@outlook.com

相关推荐

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • https://appia.in
  • Siri Shortcut Finder – your go-to place for discovering amazing Siri Shortcuts with ease

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • tomoyoshi hirata
  • Sony α7IIIマニュアルアシスタント

  • apappascs
  • Descubra la colección más completa y actualizada de servidores MCP en el mercado. Este repositorio sirve como un centro centralizado, que ofrece un extenso catálogo de servidores MCP de código abierto y propietarios, completos con características, enlaces de documentación y colaboradores.

  • ShrimpingIt
  • Manipulación basada en Micrypthon I2C del expansor GPIO de la serie MCP, derivada de AdaFruit_MCP230xx

  • jae-jae
  • Servidor MCP para obtener contenido de la página web con el navegador sin cabeza de dramaturgo.

  • HiveNexus
  • Un bot de chat de IA para equipos pequeños y medianos, que apoyan modelos como Deepseek, Open AI, Claude y Gemini. 专为中小团队设计的 ai 聊天应用 , 支持 Deepseek 、 Open ai 、 Claude 、 Géminis 等模型。

  • ravitemer
  • Un poderoso complemento Neovim para administrar servidores MCP (protocolo de contexto del modelo)

  • patruff
  • Puente entre los servidores Ollama y MCP, lo que permite a LLM locales utilizar herramientas de protocolo de contexto del modelo

    Reviews

    5 (1)
    Avatar
    user_AZMNwEFG
    2025-04-17

    As a devoted user of MCP applications, I highly recommend Rulego-Server. It’s a robust and efficient tool for creating rule-based data processing workflows. Rulego-Server, developed by Rulego, streamlines the integration of various data sources and automation tasks with its intuitive interface. Check it out on GitHub at: https://github.com/rulego/rulego-server. It has significantly improved my productivity and simplified complex rule management processes.