Croft Laravel

Um servidor MCP local para desenvolvedores Laravel aumentarem a produtividade com comandos artisan.

Documentação


Croft agora é Laravel Boost!

Croft foi construído por Ashley Hindle em colaboração com Springloaded, e eventualmente se tornaria Laravel Boost. Croft não é mais mantido - confira boost em vez disso!


Croft Laravel

Croft é um servidor MCP projetado especificamente para desenvolvedores Laravel, por desenvolvedores Laravel. Queríamos uma solução plug and play para aumentar a produtividade, então construímos uma. O comando php artisan croft fornece ferramentas ao seu cliente MCP para ajudar seu programador parceiro de IA a trabalhar melhor. Este pacote é especificamente projetado para oferecer ferramentas que são úteis localmente.

Adicione ainda mais funcionalidades com usecroft.com » servidores hospedados.

Instalação

Instale o pacote via composer:

composer require usecroft/laravel --dev

Publique o arquivo de configuração com:

php artisan vendor:publish --tag="croft-config"

Adicione à sua IDE:

php artisan croft:install

Adicione mais funcionalidades com usecroft.com » servidores hospedados (em breve)

Uso

Para usar o Croft, você precisa adicioná-lo como um servidor MCP na sua ferramenta favorita.

O comando que o cliente MCP precisa executar é ./artisan croft

Cursor (Docs)

Recomendamos que você envie um arquivo mcp.json com seu projeto em .cursor/mcp.json

{
  "mcpServers": {
    "croft": {
      "command": "./artisan",
      "args": ["croft"]
    }
  }
}

Funcionalidades atuais

  • Capturar screenshots de URLs
  • Consultar banco de dados (somente leitura, ou leitura e escrita)
  • Obter URL absoluta a partir de caminho relativo
  • Obter data e hora atuais
  • Ler as últimas X entradas de log
  • Ler e filtrar a estrutura do banco de dados - tabelas, colunas, índices, chaves estrangeiras
  • Listar/filtrar rotas
  • Listar comandos artisan
  • Listar chaves config() disponíveis (e opcionalmente valores) em notação de ponto
  • Listar chaves env() disponíveis (sem vazar segredos, é claro)

Funcionalidades extras

Adicione mais funcionalidades com usecroft.com » servidores MCP remotos (em breve).

Adicione suas próprias ferramentas

É trivial adicionar suas próprias ferramentas.

Basta criar uma classe que estenda nossa classe Croft\Feature\Tool\AbstractTool, e então certifique-se de que ela esteja no seu arquivo de configuração croft.php.

Exemplo:

<?php

declare(strict_types=1);

namespace Croft\Tools;

use Croft\Feature\Tool\AbstractTool;
use Croft\Feature\Tool\ToolResponse;

class {{CLASSNAME}} extends AbstractTool
{
    public function __construct()
    {
        // Setup annotations according to MCP specification
        $this->setTitle('{{NAME}}')
            ->setReadOnly(true)        // Just listing commands, no modifications
            ->setDestructive(false)    // No destructive operations
            ->setIdempotent(true);     // Safe to retry
    }

    public function getName(): string
    {
        return '{{NAME}}';
    }

    public function getDescription(): string
    {
        return 'Must explain well what the tool can do so the MCP client can decide when to use it.';
    }

    /**
    * What params does the MCP client need to provide to use this tool?
    **/
    public function getInputSchema(): array
    {
        return [
            'type' => 'object',
            'properties' => (object) [
            ],
            'required' => [],
        ];
    }

    public function handle(array $arguments): ToolResponse
    {
        return ToolResponse::text("Howdy, this is the start of something great.");
    }
}

Depois de adicionar uma ferramenta, você precisará reiniciar o servidor, ou pedir ao cliente MCP para listar novamente as ferramentas.

Suporte e Créditos

Croft foi desenvolvido por Ashley Hindle com apoio de Springloaded. Se você gostou, por favor dê uma estrela, compartilhe e nos avise!

Ashley Hindle

Springloaded