Your Rails models. An admin interface.

AdminSuite turns resource definitions into searchable tables, forms, record pages, and dashboards. Mount it in your Rails application and keep authentication, authorization, and business logic under your control.

Get started Explore the resource DSL

Install, mount, configure

bundle add admin_suite
bin/rails generate admin_suite:install

The generator mounts the engine at /internal/admin. Configure authentication before opening it, then add your first resource.

AdminSuite.configure do |config|
  config.auth_strategy = :host_user
  config.auth_options = { resolve: ->(controller) { controller.current_user } }
  config.authorize = ->(actor:, action:, resource:, record:, context:) { actor&.admin? }
end

Use your application’s own user resolver and access policy. Read the authentication guide for fail-closed behavior, HTTP Basic, custom strategies, and record authorization.

Build your admin

Capability Start here
Searchable tables, filters, sorting, and record pages Resources
Forms and associations Fields
Navigation, sections, and dashboards Portals & dashboards
Charts with a local Chart.js bundle Charts
Named record and bulk operations Actions
Custom display components Renderers
Colors, assets, and host styles Theming & assets
A Markdown viewer for your host application Docs viewer

Give operators read access through MCP

The operator MCP endpoint exposes four read tools derived from the same resource DSL: discover resources, list records, read a record, and aggregate a collection. It requires an authenticated actor and an explicit authorization hook. No write tools or embedded assistant are included.

Configure Admin MCP

Requirements and support

AdminSuite requires Ruby 3.2 or newer and Rails 8.x. Your selected Rails release may impose a higher Ruby minimum. Use the gem’s dependency resolution to select a compatible combination.

See Troubleshooting, browse the configuration reference, or open an issue.