eloquage / laravel-mcp-ops
Aggregate MCP ops server — auth status and pluggable health checks
Fund package maintenance!
Requires
- php: ^8.4
- illuminate/contracts: ^11.0||^12.0||^13.0
- illuminate/support: ^11.0||^12.0||^13.0
- laravel/mcp: ^0.9
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^3.0
- laravel/pint: ^1.14
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.8
- orchestra/testbench: ^11.0.0||^10.0.0||^9.0.0
- pestphp/pest: ^4.0
- pestphp/pest-plugin-arch: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- spatie/laravel-health: ^1.34
Suggests
- eloquage/laravel-google-workspace: Google OAuth integration for auth_status
- eloquage/laravel-notebooklm: NotebookLM CLI integration for auth_status
- eloquage/laravel-vector-search: Vector search embedding status for auth_status
- eloquage/laravel-vector-search-ai: Vector search MCP server and embedding bridge
- spatie/laravel-health: Expose registered Spatie health checks via health_check MCP tool
Provides
None
Conflicts
None
Replaces
None
README
An aggregate Laravel MCP server for infrastructure health and authentication status across installed integrations.
Requires PHP 8.4+, Laravel 11, 12, or 13, and laravel/mcp ^0.9.
Install
composer require eloquage/laravel-mcp-ops php artisan vendor:publish --tag=mcp-ops-config
The package registers a local MCP server named ops and a web endpoint at /mcp/ops. Start the local server with:
php artisan mcp:start ops
Tools
| Tool | What it reports |
|---|---|
health_check |
Infrastructure checks from the registered HealthCheckRunner. |
auth_status |
Authentication health from installed AuthStatusProvider integrations. |
When spatie/laravel-health is installed, the package registers its health runner by default. You can bind your own implementation:
use Eloquage\LaravelMcpOps\Contracts\HealthCheckRunner; $this->app->bind(HealthCheckRunner::class, YourHealthCheckRunner::class);
Optional integrations register their auth providers automatically when installed, including Google Workspace, NotebookLM, and Vector Search. You can add a custom provider by implementing AuthStatusProvider and tagging it:
$this->app->singleton(MyAuthStatusProvider::class); $this->app->tag([MyAuthStatusProvider::class], 'mcp-ops.auth-providers');
Configuration
| Setting | Environment variable | Default |
|---|---|---|
| Local MCP handle | MCP_OPS_LOCAL_HANDLE |
ops |
| Web MCP path | MCP_OPS_WEB_PATH |
/mcp/ops |
| Auto-register Spatie health | MCP_OPS_HEALTH_AUTO_REGISTER_SPATIE |
true |
| Google auth remediation | MCP_OPS_GOOGLE_REMEDIATION |
php artisan google:auth |
| NotebookLM remediation | MCP_OPS_NOTEBOOKLM_REMEDIATION |
nlm login |
Tests
composer install
composer test
composer analyse
composer format -- --test
License
MIT. See LICENSE.md.
