Tables and forms.
Tables, forms, search and filters. Your agent creates resources around the real entities in your API.
Your stack. Your choice.
All it takes is a REST API.
Your agent inspects your API, creates resources and configures fields. You review the result in your browser.
“Build an admin for my store. I need products, orders and customers.”
Your agent verified API access. It can now inspect your store’s data.
Your agent identified what your service stores and how the records relate.
nameTextpriceNumberin_stockYes / NocategoryRelation → CategoriesYour API data, in a table, a filter and a form.
Your color. Compact navigation. Orders come first.
A Python store. A Go CRM. Content on Node.js. Your agent connects each service to MoonShine V and creates its own panel.
Separate routes, configuration and authentication for each service.
MoonShine tools for your API, from record lists to authentication and relations.
Tables, forms, search and filters. Your agent creates resources around the real entities in your API.
Orders and customers. Articles and authors. Relations within a service and across connected services.
Tokens, OAuth 2.0 and sessions. Authentication configured per API, with SSO support for panels.
A new field, filter or section? Ask your agent to update the panel through MCP. No manual admin code edits.
Check on orders. Create content. Get a summary across your services. Just send a message — your agent carries out the task through MCP and replies in the same chat.
Connect a bot in your messenger to an agent with access to MoonShine V’s MCP. It can work with your connected services using the available tools and permissions.
MoonShine V runs separately. Your agent works in your project. MCP connects the two.
Open your MoonShine V source directory. You need Docker running and Compose 2.30+. PHP and dependencies are built inside the container.
MoonShine V directorycp docker/.env.example docker/.env
docker compose --env-file docker/.env \
-f docker/docker-compose.yml build api-admin-fpm
docker compose --env-file docker/.env \
-f docker/docker-compose.yml run --rm --no-deps \
api-admin-fpm php -r \
'echo "base64:".base64_encode(random_bytes(32)).PHP_EOL;'Copy the generated base64:… key into APP_KEY in docker/.env. Then start the stack:
docker compose --env-file docker/.env \
-f docker/docker-compose.yml up -d --buildLocal admin: localhost:8080. Your service’s API must be reachable from Docker.
Choose your agent and add the configuration to your service project. It connects your agent to the running MoonShine V container.
Your service project{
"mcpServers": {
"moonshine-v": {
"type": "stdio",
"command": "docker",
"args": [
"exec", "-i", "moonshine-api-admin-fpm",
"php", "artisan", "api-admin:mcp-server"
]
}
}
}In your service’s project root. Approve the project connection when Claude Code starts. Use /mcp to check the server.
Documentation Claude Code{
"mcpServers": {
"moonshine-v": {
"command": "docker",
"args": [
"exec", "-i", "moonshine-api-admin-fpm",
"php", "artisan", "api-admin:mcp-server"
]
}
}
}In your service’s project directory. Open the project in Cursor and enable the server in MCP settings. Use Agent mode.
Documentation Cursor[mcp_servers.moonshine-v]
command = "docker"
args = [
"exec", "-i", "moonshine-api-admin-fpm",
"php", "artisan", "api-admin:mcp-server"
]In your service’s directory, in a trusted project. To use it across projects, add the section to ~/.codex/config.toml. Check it in the CLI with /mcp.
Documentation CodexIf a config already exists, add only the moonshine-v entry. Keep your other MCP connections.
In your service project, run claude for Claude Code, codex for Codex, or open Agent chat in Cursor. Paste the prompt. Your agent asks about the API and builds the panel.
Your agent conversationConnect my service to MoonShine V through MCP. First ask for the REST API URL and documentation, authentication requirements and entities. Inspect API responses, configure a dedicated panel, resources, fields, relations, filters and supported actions. Verify the result. If there are multiple services, create a separate panel for each. Do not invent endpoints or enable operations the API does not support.
Keep shaping your admin through MCP: colors, branding and layout. Ask your agent to update the palette, use your logo, collapse the sidebar or reorder the menu.
Update my panel through MCP: primary color #91CAFF, my logo, a collapsed sidebar and Orders first in the menu. Ask for the logo URL and service name if they are missing from context. Apply the changes with configure_layout.
No. MoonShine V works with REST APIs over HTTP. Your service can use Python, Go, Java, Node.js, PHP or another stack. Laravel and MoonShine run inside the admin itself.
Through MCP, your agent registers the service, inspects endpoints and response formats, creates resources and configures fields, relations, navigation and styling. It can update the panel through the same tools later.
Yes. Each service has its own panel, routes, configuration and authentication. Connected services can use different stacks and API response formats.
You need an accessible REST API with a clear data structure. Your agent configures response mapping, pagination and supported operations. Creating, editing, deleting, searching and sorting depend on your API capabilities.