返回市场
克罗夫特

克罗夫特

作者:usecroft89 星标更新:2025-10-20

项目介绍

Croft 是专门为 Laravel 开发者设计的 MCP 服务器,由 Laravel 开发者构建。我们希望有一个即插即用的解决方案来提高生产力,因此我们创建了这个工具。php artisan croft 命令提供了工具给您的 MCP 客户端,帮助您的 AI 配对程序员更好地工作。此包特别设计用于提供本地有用的工具。

通过 usecroft.com » 托管服务器添加更多功能。

安装

通过 Composer 安装包:

composer require usecroft/laravel --dev

发布配置文件:

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

在您的 IDE 中添加:

php artisan croft:install

通过 usecroft.com » 托管服务器添加更多功能(即将推出)。

使用

要使用 Croft,您需要将其作为 MCP 服务器添加到您最喜欢的工具中。

MCP 客户端需要运行的命令是 ./artisan croft

Cursor (文档)

我们建议您在项目中包含一个 mcp.json 文件,位于 .cursor/mcp.json

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

当前功能

  • 截图 URL
  • 查询数据库(只读或读写)
  • 从相对路径获取绝对 URL
  • 获取当前日期和时间
  • 读取最后 X 条日志条目
  • 读取并过滤数据库结构 - 表、列、索引、外键
  • 列出/过滤路由
  • 列出 Artisan 命令
  • 列出可用的 config() 键(可选值)以点表示法
  • 列出可用的 env() 键(当然不会泄露秘密)

额外功能

通过 usecroft.com » 远程 MCP 服务器添加更多功能(即将推出)。

添加自己的工具

添加自己的工具非常简单。

只需创建一个扩展我们 Croft\Feature\Tool\AbstractTool 类的类,然后确保它在您的 croft.php 配置文件中。

示例:

<?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()
    {
        // 根据 MCP 规范设置注解
        $this->setTitle('{{NAME}}')
            ->setReadOnly(true)        // 只列出命令,不进行修改
            ->setDestructive(false)    // 没有破坏性操作
            ->setIdempotent(true);     // 可安全重试
    }

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

    public function getDescription(): string
    {
        return '必须很好地解释该工具可以做什么,以便 MCP 客户端决定何时使用它。';
    }

    /**
    * MCP 客户端需要提供哪些参数才能使用此工具?
    **/
    public function getInputSchema(): array
    {
        return [
            'type' => 'object',
            'properties' => (object) [
            ],
            'required' => [],
        ];
    }

    public function handle(array $arguments): ToolResponse
    {
        return ToolResponse::text("你好,这是伟大的开始。");
    }
}

添加工具后,您需要重启服务器,或者请求 MCP 客户端重新列出工具。

支持与致谢

Croft 由 Ashley Hindle 开发,并得到了 Springloaded 的支持。如果您喜欢它,请给它点赞,分享它,并告诉我们!

Ashley Hindle

Springloaded