fix(config) : disable uninstalled McpBundle to fix boot crash

McpBundle was registered but symfony/ai-mcp-bundle is not installed,
causing a critical error on boot. Disabled all MCP references:
- bundles.php: removed McpBundle
- mcp.yaml: renamed to mcp.yaml.disabled
- routes.yaml: removed mcp route
- services.yaml: commented McpHeaderAuthenticator, excluded src/Mcp/
- security.yaml: commented mcp firewall and access control
- phpunit.dist.xml: excluded tests/Mcp

All marked with TODO for re-enabling when the package is installed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Matthieu
2026-03-16 14:01:19 +01:00
parent 98caaa148d
commit 37aa755819
6 changed files with 14 additions and 15 deletions

View File

@@ -8,7 +8,6 @@ use Doctrine\Bundle\DoctrineBundle\DoctrineBundle;
use Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle;
use Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle;
use Nelmio\CorsBundle\NelmioCorsBundle;
use Symfony\AI\McpBundle\McpBundle;
use Symfony\Bundle\FrameworkBundle\FrameworkBundle;
use Symfony\Bundle\SecurityBundle\SecurityBundle;
use Symfony\Bundle\TwigBundle\TwigBundle;
@@ -23,5 +22,4 @@ return [
ApiPlatformBundle::class => ['all' => true],
LexikJWTAuthenticationBundle::class => ['all' => true],
DAMADoctrineTestBundle::class => ['test' => true],
McpBundle::class => ['all' => true],
];

View File

@@ -27,11 +27,12 @@ security:
pattern: ^/api/session/profiles?$
security: false
mcp:
pattern: ^/_mcp
stateless: true
custom_authenticators:
- App\Mcp\Security\McpHeaderAuthenticator
# TODO: re-enable when symfony/ai-mcp-bundle is installed
# mcp:
# pattern: ^/_mcp
# stateless: true
# custom_authenticators:
# - App\Mcp\Security\McpHeaderAuthenticator
api:
pattern: ^/api
@@ -55,7 +56,7 @@ security:
- { path: ^/api/admin, roles: ROLE_ADMIN }
- { path: ^/api/docs, roles: PUBLIC_ACCESS }
- { path: ^/api/health$, roles: PUBLIC_ACCESS }
- { path: ^/_mcp, roles: ROLE_USER }
# - { path: ^/_mcp, roles: ROLE_USER } # TODO: re-enable with MCP
- { path: ^/docs, roles: PUBLIC_ACCESS }
- { path: ^/contexts, roles: PUBLIC_ACCESS }
- { path: ^/\.well-known, roles: PUBLIC_ACCESS }

View File

@@ -12,7 +12,3 @@ api_login_check:
controllers:
resource: routing.controllers
mcp:
resource: .
type: mcp

View File

@@ -18,6 +18,8 @@ services:
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/'
exclude:
- '../src/Mcp/'
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
@@ -34,9 +36,10 @@ services:
tags:
- { name: doctrine.event_subscriber }
App\Mcp\Security\McpHeaderAuthenticator:
arguments:
$mcpAuthLimiter: '@limiter.mcp_auth'
# TODO: re-enable when symfony/ai-mcp-bundle is installed
# App\Mcp\Security\McpHeaderAuthenticator:
# arguments:
# $mcpAuthLimiter: '@limiter.mcp_auth'
App\OpenApi\OpenApiDecorator:
decorates: 'api_platform.openapi.factory'

View File

@@ -20,6 +20,7 @@
<testsuites>
<testsuite name="Project Test Suite">
<directory>tests</directory>
<exclude>tests/Mcp</exclude>
</testsuite>
</testsuites>