- What is php-llm/mcp-sdk and what does it do?
- php-llm/mcp-sdk is a framework-agnostic PHP SDK for building Model Context Protocol client and server applications. It provides tools, resources, and prompts primitives with transport support. In Laravel it fits behind an adapter or service-provider layer rather than as a native Laravel package.
- Is php-llm/mcp-sdk safe to use in production?
- Treat it as high risk for production: it is archived, has low adoption signals such as 34 stars and a 0.332 score, and should not be assumed to receive security or specification updates. Use it as a reference implementation or time-boxed proof-of-concept accelerator. Production adoption likely requires forking and owning maintenance.
- How do I install php-llm/mcp-sdk in a Laravel application?
- Composer installation may be feasible, but the repository is unknown and the package is archived, so confirm Packagist status, provenance, and PHP constraints first. In Laravel, wrap it in a service provider and bind MCP interfaces through the container rather than coupling domain services to the SDK. If adopted, pin a commit and consider publishing an internal Composer package.
- Does php-llm/mcp-sdk support both MCP client and server roles?
- The overview describes it as an SDK for client and server applications, so both roles are intended. The provided context does not state which MCP specification version it implements, so verify conformance before any pilot. Confirm client/server behavior against your target AI clients and tool-schema expectations.
- Which transports does php-llm/mcp-sdk support, such as stdio, HTTP/SSE, or streamable HTTP?
- The provided context does not confirm which transports are supported, so verify stdio, HTTP/SSE, or streamable HTTP support before integration. For Laravel, do not use stdio transport in normal web request paths; reserve it for CLI or desktop-style integrations. Treat transport choice as a pilot gate.
- Is php-llm/mcp-sdk compatible with Laravel 10, 11, or 12 and PHP 8.x?
- Compatibility is not confirmed in the provided details, so verify PHP version constraints, Laravel versions, PSR interfaces, Symfony component constraints, and transport dependencies. The SDK is framework-agnostic, so Laravel use requires an adapter and validation under Octane and queue workers. Pin versions once verified.
- Why is php-llm/mcp-sdk archived and what does that mean for maintenance?
- Archived status means no expected security patches, bug fixes, or MCP specification updates, so adopters own maintenance. Expect to pin versions, monitor specification changes, patch dependencies, and maintain a fork. Budget ongoing engineering ownership even for a narrow use case.
- How should I expose Laravel domain services as MCP tools safely?
- Wrap the SDK in a Laravel service provider, bind MCP client and server interfaces through the container, and keep domain services decoupled from MCP schemas and transport concerns. Add configuration for server name, capabilities, transports, authentication, timeouts, and allowed tools. Use Laravel middleware for authentication, authorization, rate limiting, and audit logging, and start with a read-only tool.
- What are the alternatives to php-llm/mcp-sdk for MCP in PHP or Laravel?
- There is no named alternative in the provided context, but a maintained fork or credible SDK should be evaluated before adoption. Because the package is MIT licensed, forking is possible, though it shifts maintenance to your team. Build an adapter layer so you can replace the SDK with a minimal in-house implementation without rewriting domain logic.
- How do I test and govern MCP tool calls in Laravel before enabling write actions?
- Run a time-boxed two-week spike exposing one read-only Laravel capability as an MCP tool plus one client integration. Add tests, audit logging, rate limiting, and allowed-tool configuration before any broader use. Pilot with limited users and read-only or low-risk tools, and only enable write actions after governance controls are proven.