Daktela-v6-php mcp服务器
贝塔:该项目处于早期测试阶段。API、工具名称和输出格式在未来的版本中可能会发生变化。
只读 主控程序 服务器 达克特尔 联系中心REST API v6。为任何兼容MCP的LLM客户端(Claude、Cursor等)提供对工单、电话、电子邮件、聊天、联系人、CRM记录、活动和实时代理状态的完全读取权限。
为什么
联络中心每天产生数千次互动——通过多个渠道进行电话、电子邮件和聊天。原始数据都在Daktela中,但从中提取见解需要手动审查或自定义报告。此服务器将Daktela连接到LLM,让您运行手动无法完成的分析:
- 电子邮件质量审核 --在最近的所有电子邮件中标记负面情绪、不专业的语气和丢失的交易
- 通话记录分析 --从通话记录中识别升级、知识差距和未履行的承诺
- 销售渠道审查 --评估各个票证阶段的交易健康状况,按紧急程度排序,并建议采取行动
LLM读取实际的对话内容——电子邮件正文、聊天消息、通话记录——并应用任何仪表板或过滤器都无法复制的判断。
工具
按域组织的43个只读工具:
| 类别 | 工具 |
|---|---|
| 门票 | count_tickets, get_ticket, get_ticket_detail, list_account_tickets, list_ticket_categories, list_tickets |
| 活动 | count_activities, get_activity, list_activities |
| 呼叫 | count_calls, get_call, get_call_transcript, list_call_transcripts, list_calls |
| 电子邮件 | count_emails, get_email, list_emails |
| 消息传递 | count_chats, get_chat, list_chats (支持网络聊天、短信、Messenger、Instagram、WhatsApp、Viber) |
| 联系人和CRM | count_accounts, count_contacts, count_crm_records, get_account, get_contact, get_crm_record, list_accounts, list_contacts, list_crm_records |
| 活动 | count_campaign_records, get_campaign_record, list_campaign_records, list_campaign_types |
| 参考数据 | list_groups, list_pauses, list_queues, list_statuses, list_templates, list_users |
| 实时 | list_realtime_sessions |
| 知识库 | get_article, list_article_folders, list_articles |
所有列表工具都支持分页(skip, take)、排序和上下文过滤器(阶段、优先级、日期范围、用户、队列等)。根据枚举值验证输入参数,并显示明确的错误消息。
提示
4个用于常见分析工作流的内置提示模板:
| 提示 | 描述 |
|---|---|
email_quality_audit | 审核电子邮件质量——标记负面情绪、不专业语气和交易失败 |
sales_pipeline_review | 审查未结销售单,评估交易健康状况,并建议采取行动 |
call_quality_review | 查看通话记录,了解升级、知识差距和辅导机会 |
daily_call_analysis | 全人工智能评分每日通话分析——标记流失风险、人工智能产品问题和处理质量 |
资源
| 资源 | URI | 描述 |
|---|---|---|
| 实例信息 | daktela://instance | 已连接Daktela实例URL和API版本 |
| 字段架构 | daktela://schema | 实体定义、关系和有效筛选值 |
入门
先决条件
- PHP 8.2+
- 作曲家
- 具有API读取访问权限的用户帐户的Daktela实例
安装
git clone https://github.com/Daktela/daktela-v6-php-mcp-server.git
cd daktela-v6-php-mcp-server
composer install使用Claude Desktop运行
添加到您的Claude Desktop配置(claude_desktop_config.json):
使用Docker(推荐):
{
"mcpServers": {
"daktela": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "DAKTELA_URL=https://your-instance.daktela.com",
"-e", "DAKTELA_ACCESS_TOKEN=your-api-token",
"daktela-v6-php-mcp-server"
]
}
}
}直接使用PHP:
{
"mcpServers": {
"daktela": {
"command": "php",
"args": ["/path/to/daktela-v6-php-mcp-server/bin/server.php"],
"env": {
"DAKTELA_URL": "https://your-instance.daktela.com",
"DAKTELA_ACCESS_TOKEN": "your-api-token"
}
}
}
}使用Docker运行
# Build the production image
docker build -f Dockerfile.prod -t daktela-v6-php-mcp-server .
# Run with stdio transport
docker run -i --rm \
-e DAKTELA_URL=https://your-instance.daktela.com \
-e DAKTELA_ACCESS_TOKEN=your-api-token \
daktela-v6-php-mcp-server
# Run HTTP server (for remote deployments)
docker run --rm -p 8080:8080 \
-e DAKTELA_URL=https://your-instance.daktela.com \
-e DAKTELA_ACCESS_TOKEN=your-api-token \
daktela-v6-php-mcp-server php bin/http-server.php部署为HTTP服务器
对于共享或远程部署(例如Cloud Run),服务器以流式http模式运行,其中每个客户端通过http标头传递凭据:
gcloud run deploy daktela-v6-php-mcp-server \
--source . \
--dockerfile Dockerfile.prod \
--region europe-west1 \
--allow-unauthenticated \
--memory 1Gi建筑
src/
├── DaktelaMcpServer.php Main server — registers tools, prompts, resources
├── Version.php Version from composer.json
├── Auth/ Authentication & URL validation
├── Cache/ Reference data caching (TTL)
├── Client/ Daktela API client wrapper
├── Config/ Configuration resolution (env vars)
├── Enum/ PHP enums (TicketStage, Priority, Direction, etc.)
├── Filter/ Query filter & date range builders
├── Formatter/ Markdown output formatters per entity
├── Http/ HTTP request handler (CORS, health, routing)
├── Log/ Structured JSON logger (stderr)
├── Prompt/ MCP prompt templates
├── Resolver/ Name resolution (users, folders, tags)
├── Resource/ MCP resources (instance info, schema)
├── Session/ Session store for HTTP mode
├── Tool/ 11 tool classes (tickets, calls, emails, etc.)
└── Validation/ Input validation using PHP enums配置
| 环境变量 | 默认值 | 描述 |
|---|---|---|
DAKTELA_URL | -- | Daktela实例URL(必填) |
DAKTELA_ACCESS_TOKEN | - | API访问令牌(必需) |
CACHE_ENABLED | true | 启用参考数据缓存 |
CACHE_TTL_SECONDS | 3600 | 缓存TTL(秒) |
看 .env.example 对于模板。
发展
# Run in Docker (as per project convention)
docker compose run php composer install
docker compose run php composer test
docker compose run php composer analyse
docker compose run php vendor/bin/php-cs-fixer fix --dry-run --diff