Token导航 LogoToken导航TokenDH.com
Cakephp Synapse logo
AI代理未说明官方级别未说明来源级核验

Cakephp Synapse

MCP Server

Synapse是一个CakePHP插件,实现模型上下文协议(MCP),允许AI助手和其他MCP客户端通过标准化接口与你的CakePHP应用程序交互。

工具数

0

提示词数

0

GitHub Stars

6

资源数

0
PHP开发工具ClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

josbeir

提供方

josbeir

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

![PHPStan Level 8](https://github.com/josbeir/cakephp-synapse) ![Build Status](https://github.com/josbeir/cakephp-synapse/actions) ![codecov](https://codecov.io/github/josbeir/cakephp-synapse) ![License: MIT](https://opensource.org/licenses/MIT) ](https://www.php.net/releases/8.2/en.php) ](https://cakephp.org/) ](https://packagist.org/packages/josbeir/cakephp-synapse)

Synapse:CakePHP MCP服务器插件

通过模型上下文协议(MCP)公开CakePHP应用程序的功能。

目录

- 需求 - 安装插件

- 创建自定义工具、资源和提示

- 命令选项 - MCP检验员测试 - 运输选项

概述

Synapse是一个CakePHP插件,它实现了 模型上下文协议(MCP),允许AI助手和其他MCP客户端通过标准化的接口与CakePHP应用程序进行交互。

\[!警告\] 此插件使用 MCP-PHP-SDK 目前正在积极开发中。随着SDK的发展,功能和API可能会发生变化。

模型上下文协议是一种开放协议,可实现AI助手(如Claude)与应用程序的数据和功能之间的无缝集成。使用Synapse,您可以公开:

  • 工具:AI助手可以调用的功能(例如数据库查询、路线检查)
  • 资源:可读取的数据源
  • 提示:常见任务的预配置模板

特性

  • 🚀 快速集成:在CakePHP应用程序中以最少的设置启用MCP支持
  • 🔍 基于属性的发现:使用PHP 8+属性和类扫描查找MCP工具、资源和提示
  • 🛠️ 内置工具:包括用于系统信息、数据库模式探索、路由检查、代码执行等的工具
  • 📚 高级文档搜索:全文搜索,模糊匹配和相关性排名,由SQLite FTS5提供支持(索引官方CakePHP markdown文档)
  • 🧩 可定制和可扩展:使用属性和配置轻松定义自己的工具、资源和提示
  • 快速工作流:用于常见开发任务、代码审查、调试和功能构建的内置提示流

安装

需求

  • PHP 8.2或更高版本
  • CakePHP 5.2或更高版本

安装插件

通过Composer作为开发依赖项安装:

composer require --dev josbeir/cakephp-synapse
\[!注意\] 此插件通常用作开发工具,允许AI助手在开发过程中与您的应用程序进行交互。它不应该安装在生产环境中。
bin/cake plugin load --only-cli --optional Synapse

该插件将自动注册并在您的应用程序中发现MCP元素。

\[!提示\] 更新插件后,建议重新索引文档以确保所有功能正常工作: ``bash bin/cake synapse index -d # Destroy old index bin/cake synapse index # Re-index documentation ``

快速开始

  1. 安装插件 (见上文)
  1. 配置启用MCP的客户端:

要连接Claude Code/桌面或其他MCP客户端(VSCode/Zed/…):

  1. 配置客户端以使用stdio传输
  2. 将其指向CakePHP bin目录: bin/cake synapse server
  3. 客户端将通过MCP协议与您的应用程序通信

大多数客户需要 命令 这将是你的蛋糕可执行文件 bin/cake 随后 参数: synapse server

{
  "my-cakephp-app": {
    "command": "bin/cake",
    "args": ["synapse", "server"]
  }
}

或使用时运行 DDEV 例子

{
  "my-cakephp-app": {
    "command": "ddev",
    "args": ["cake", "synapse", "server"],
  }
}

配置

Synapse有各种配置选项。参见 config/synapse.php 关于可用设置和自定义的详细信息,请参阅此插件。

内置工具

Synapse包括几个用于常见操作的内置工具和资源:

类别名称描述
系统system_info获取CakePHP版本、PHP版本、调试模式等。
系统config_read读取配置值
系统debug_status检查调试模式是否已启用
系统list_env_vars列出所有可用的环境变量
代码执行tinker使用完整的应用程序上下文执行任意PHP代码
数据库database_connections列出所有已配置的数据库连接
数据库database_schema获取表的详细架构信息(查看所有表,检查列、约束、索引,了解外键关系)
路线list_routes列出所有经过筛选和排序的路线
路线get_route获取特定路线的详细信息
路线match_url查找与给定URL匹配的路由
路线detect_route_collisions查找潜在的路线冲突
文件search_docs使用相关性排名、模糊匹配和过滤搜索文档
文件get_doc按文档ID检索完整文档内容(格式: source::path)
文件docs_stats查看索引统计数据和可用来源
文件docs://search/{query}搜索CakePHP文档并返回格式化结果
文件docs://content/{documentId}按文档ID检索完整文档内容(格式: source::path)
命令list_commands列出所有可用的CakePHP控制台命令,包括可选的过滤和排序
命令get_command_info获取特定控制台命令的详细信息(选项、参数、帮助)
\[!警告\] 这 tinker 该工具在您的应用程序中执行任意代码。负责任地使用,避免在未经明确批准的情况下修改数据。
\[!提示\] 这 tinker 该工具可用于使用CakePHP的ORM查询数据库。修补上下文提供了对 $this->fetchTable() 便于数据库操作。
\[!注意\] 文件从官方网站索引 CakePHP markdown文档该索引是使用SQLite FTS5在本地构建的,用于快速、无依赖性的全文搜索。

内置提示

Synapse包括预定义的提示工作流,指导LLM完成常见的CakePHP开发任务。提示将多种工具(搜索文档、阅读文档、修补)组合成结构化的最佳实践工作流程。

可用提示

提示描述参数
documentation-expert通过示例获取CakePHP功能的全面指导topic (必填), depth (可选:基础/中级/高级)
debug-helper针对错误和问题的系统调试工作流程error (必填), context (可选:控制器/型号/数据库/视图)
feature-builder遵循惯例实现完整功能的指南feature (必填), component (可选:控制器/模型/行为/助手/中间件/命令/全栈)
database-explorer探索数据库模式、关系和数据table (必填), show (可选:模式/数据/关系/all)
code-reviewer根据CakePHP约定和最佳实践审查代码code (必填), focus (可选:约定/安全/性能/测试/全部)
migration-guide帮助在CakePHP版本之间迁移代码fromVersion, toVersion (必填), area (可选:特定功能或通用)
testing-assistant生成测试用例和测试指南subject (必填), testType (可选:单元/集成/夹具/全部)
performance-analyzer分析和优化性能问题concern (必填), context (可选:代码片段或描述)
orm-query-helper在指导下构建复杂的ORM查询queryGoal (必填), tables (可选:逗号分隔列表)
tinker-workshop交互式PHP探索和测试指南goal (必填:探索/测试/调试), subject (可选)
quality-assuranceCakePHP的编码指南和QA最佳实践context (可选:指南/集成/故障排除/全部), tools (可选:全部或逗号分隔列表)

自动提示:

  • 搜索相关文档
  • 阅读详细指南
  • 通过修补程序执行测试代码
  • 根据最佳实践提供结构化、全面的答案

优点:

  • 更快的工作流程 -常见任务变成一步操作
  • 最佳实践 -提示编码CakePHP的专业知识和惯例
  • 一致性 -常见问题的标准化处理方法
  • 发现 -查看可用的工作流程,无需记住工具组合

配置提示

Prompts可以引用特定的CakePHP版本并使用各种质量工具。在中配置两者 config/synapse.php:

return [
    'Synapse' => [
        'prompts' => [
            // Target CakePHP version for prompt responses (e.g. '5.x', '5.2', '4.5', '4.x')
            'cakephp_version' => env('MCP_CAKEPHP_VERSION', '5.x'),

            // Target PHP version for prompt responses (e.g. '8.2', '8.3', '8.x')
            'php_version' => env('MCP_PHP_VERSION', PHP_VERSION),

            // Quality tools configuration
            'quality_tools' => [
                'phpcs' => ['enabled' => true, 'standard' => 'cakephp'],
                'phpstan' => ['enabled' => true, 'level' => 8],
                'phpunit' => ['enabled' => true, 'coverage' => true],
                'rector' => ['enabled' => false, 'set' => 'cakephp'],
                'psalm' => ['enabled' => false, 'level' => 3],
            ],
        ],
    ],
];

创建自定义工具、资源和提示

您可以使用PHP属性使用自己的工具、资源和提示来扩展Synapse。Synapse会自动在您的 src/ 使用MCP属性的目录。

工具 公开AI助手可以调用的函数。创建它们 #[McpTool]:

fetchTable('Users');
        $user = $usersTable->get($id);

        return [
            'id' => $user->id,
            'email' => $user->email,
            'name' => $user->name,
        ];
    }
}

资源 暴露数据源。创建它们 #[McpResourceTemplate].

提示 指导LLM完成工作流程。创建它们 #[McpPrompt].

有关所有MCP功能、属性和实现模式的详细文档,请参阅 MCP PHP SDK文档.

CLI使用情况

使用CLI管理和搜索索引:

# Index all sources
bin/cake synapse index

# Index specific source
bin/cake synapse index --source cakephp-5x

# Force re-index and optimize
bin/cake synapse index --force --optimize

# Search documentation from CLI (interactive mode by default)
bin/cake synapse search "authentication"

# Search with options
bin/cake synapse search "database queries" --limit 5 --fuzzy --detailed

# Non-interactive mode for scripts/CI
bin/cake synapse search "authentication" --non-interactive

# Interactive features:
# - View result details and snippets
# - Navigate between results
# - View full document content
# - All from within the CLI

运行服务器

\[!注意\] 在大多数情况下,你会 需要手动运行MCP服务器。当您将服务器配置为使用CakePHP应用程序时,服务器通常由您的IDE或启用MCP的客户端(如Claude Desktop、VSCode、Zed等)自动启动。客户端将使用适当的命令启动服务器(例如。, bin/cake synapse server)并为您处理连接。

如果要手动运行MCP服务器进行测试或调试,可以使用以下CLI命令:

# Start with default settings (stdio transport)
bin/cake synapse server

# Start with verbose output
bin/cake synapse server --verbose

# Disable caching
bin/cake synapse server --no-cache

# Launch MCP Inspector for testing (requires Node.js/npx)
bin/cake synapse server --inspect

# View help
bin/cake synapse server --help

命令选项

选项简短描述
--transport-t运输类型(目前仅 stdio 支持)
--no-cache-n禁用此运行的发现缓存
--clear-cache-c启动前清除发现缓存
--inspect-i启动MCP Inspector以交互方式测试服务器(需要Node.js/npx)
--verbose-v启用详细输出(将日志记录到stderr)
--quiet-q抑制除错误外的所有输出

MCP检验员测试

--inspect 标志启动 MCP检查员,一个开发工具,提供基于web的UI来测试您的MCP服务器:

bin/cake synapse server --inspect

这将:

  1. 启动MCP检查器(如果未安装,则通过npx自动下载)
  2. 以检查器模式启动服务器
  3. 打开具有交互式UI的web浏览器
  4. 允许您以交互方式测试工具、资源和提示

要求:

  • 必须安装Node.js和npx
  • 网络浏览器

检查员在开发过程中非常宝贵,因为:

  • 测试工具功能
  • 检查资源数据
  • 调试服务器行为
  • 验证工具模式和文档

运输选项

目前,Synapse支持:

  • 标准 -标准输入/输出(默认,建议大多数MCP客户端使用)

未来的版本可能包括HTTP/SSE传输。

发现缓存

发现缓存通过缓存发现的MCP元素(工具、资源、提示)来提高服务器启动性能。

配置

Synapse使用CakePHP内置的PSR-16缓存系统。在中配置缓存 config/synapse.php

命令选项

# Disable caching for this run
bin/cake synapse server --no-cache
bin/cake synapse server -n

# Clear cache before starting
bin/cake synapse server --clear-cache
bin/cake synapse server -c

# Combine options
bin/cake synapse server --clear-cache --verbose

测试

运行测试套件:

# Run all tests
composer test

# Run with coverage
composer test-coverage

# Run PHPStan analysis
composer phpstan

# Check code style
composer cs-check

# Fix code style
composer cs-fix

贡献

欢迎投稿!请遵循以下指南:

  1. 代码规范:遵循CakePHP编码标准
  2. 测试:添加新功能的测试
  3. PHPStan的:确保8级合规
  4. 文档:更新README以获取新功能

开发设置

# Clone the repository
git clone https://github.com/josbeir/cakephp-synapse.git
cd synapse

# Install dependencies
composer install

# Run tests
composer test

# Run static analysis
composer phpstan

许可证

此插件是根据 MIT许可证.

鸣谢

\[!注意\] MCP PHP SDK正在积极开发中,API可能会发生变化。

目录标签

目录标签

PHP开发工具Claude本地部署CakePHP插件AI助手集成模型上下文协议数据库探索

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP