Laravel Kick
About
# Laravel Kick [](https://github.com/StuMason/laravel-kick/actions/workflows/tests.yml) [](https://github.com/StuMason/laravel-kick/actions/…
Explore
- MCP server and REST API for Laravel introspection
- Health check for database, cache, storage, and Redis
- System stats: CPU, memory, disk, uptime
- Log reading with filtering and PII scrubbing
- Queue status overview and retry of failed jobs
- Artisan command listing and whitelisted execution
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Laravel KickCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
composer require stumason/laravel-kick
Add to .env:
KICK_ENABLED=true
KICK_TOKEN=your-secure-random-token
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": [
"mcp-remote@latest",
"https://your-app.com/mcp/kick",
"--transport",
"http-only",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer your-kick-token"
}
}
}
}
Then ask the LLM:
- "Check the health of my app"
- "Show me the last 20 ERROR entries in the logs"
- "What's failing in the queue?"
- "Clear the config cache"
kick_health
Database, cache, storage, redis connectivity
kick_stats
CPU, memory, disk, uptime
kick_logs_list
List log files
kick_logs_read
Read logs with filtering
kick_queue_status
Queue overview, failed jobs
kick_queue_retry
Retry failed jobs
kick_artisan_list
List available commands
kick_artisan_run
Execute whitelisted commands
| Tool | Description |
|------|-------------|
| kick_health | Database, cache, storage, redis connectivity |
| kick_stats | CPU, memory, disk, uptime |
| kick_logs_list | List log files |
| kick_logs_read | Read logs with filtering |
| kick_queue_status | Queue overview, failed jobs |
| kick_queue_retry | Retry failed jobs |
| kick_artisan_list | List available commands |
| kick_artisan_run | Execute whitelisted commands |
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"laravel kick": {
"laravel-kick": {
"url": "https://your-app.com/mcp/kick",
"headers": {
"Authorization": "Bearer your-kick-token"
}
}
}
}
}
McpServers
{
"laravel-kick": {
"url": "https://your-app.com/mcp/kick",
"headers": {
"Authorization": "Bearer your-kick-token"
}
}
}
MCP server and REST API for Laravel application introspection.
Connect your MCP client directly to your Laravel app. Check health, read logs, inspect queues, run commands - all through natural conversation.
Installation
composer require stumason/laravel-kick
Add to .env:
KICK_ENABLED=true
KICK_TOKEN=your-secure-random-token
MCP Setup
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"my-app": {
"command": "npx",
"args": [
"mcp-remote@latest",
"https://your-app.com/mcp/kick",
"--transport",
"http-only",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer your-kick-token"
}
}
}
}
Then ask the LLM:
- "Check the health of my app"
- "Show me the last 20 ERROR entries in the logs"
- "What's failing in the queue?"
- "Clear the config cache"
Available Tools
| Tool | Description |
|------|-------------|
| kick_health | Database, cache, storage, redis connectivity |
| kick_stats | CPU, memory, disk, uptime |
| kick_logs_list | List log files |
| kick_logs_read | Read logs with filtering |
| kick_queue_status | Queue overview, failed jobs |
| kick_queue_retry | Retry failed jobs |
| kick_artisan_list | List available commands |
| kick_artisan_run | Execute whitelisted commands |
REST API
The same functionality is available via HTTP:
curl -H "Authorization: Bearer $TOKEN" https://app.com/kick/health
curl -H "Authorization: Bearer $TOKEN" https://app.com/kick/stats
curl -H "Authorization: Bearer $TOKEN" "https://app.com/kick/logs/laravel.log?level=ERROR"
curl -X POST -H "Authorization: Bearer $TOKEN" -d '{"command":"cache:clear"}' https://app.com/kick/artisan
See the API documentation for all endpoints.
Security
- Disabled by default (KICK_ENABLED=false)
- Token-based authentication with scopes
- Artisan command whitelist
- Path traversal protection
- Automatic PII scrubbing from logs
Requirements
- PHP 8.4+
- Laravel 12
License
MIT
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



