Dixa MCP 服务器是一个 FastMCP 服务器,它提供了与 Dixa API 交互的实用工具。借助该服务器,你能够便捷地搜索对话、获取对话详细信息以及管理标签等。
要运行此服务器,你需要按照以下步骤进行操作:
npm install
npm install fastmcp
cp .env.example .env
接着,编辑 .env
文件,并添加你的 Dixa API 密钥:
DIXA_API_KEY=your_api_key_here
# 使用 CLI 测试服务器示例:
npx fastmcp dev src/tools/index.ts
# 使用 MCP Inspector 测试服务器示例:
npx fastmcp inspect src/tools/index.ts
若要在 Claude 中使用此服务器,请按以下步骤操作:
{
"mcpServers": {
"dixa-mcp-server": {
"command": "npx",
"args": [
"tsx",
"/PATH/TO/FOLDER/dixa-mcp-server/src/tools/index.ts"
],
"env": {
"DIXA_API_KEY": "YOUR_API_KEY_TO_DIXA"
}
}
}
}
你还可以使用 SSE 支持来运行服务器:
server.start({
transportType: "sse",
sse: {
endpoint: "/sse",
port: 8080,
},
});
这将启动服务器,并在 http://localhost:8080/sse
监听 SSE 连接。
你可以使用 SSEClientTransport
连接到服务器:
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";
const client = new Client(
{
name: "example-client",
version: "1.0.0",
},
{
capabilities: {},
},
);
const transport = new SSEClientTransport(new URL(`http://localhost:8080/sse`));
await client.connect(transport);
该服务器实现了多种实用工具,以下为你详细介绍:
searchConversations
:在 Dixa 中搜索对话,支持分页。getConversation
:通过 ID 获取单个对话。getConversationMessages
:获取特定对话的所有消息。getConversationTags
:获取与特定对话关联的所有标签。getConversationNotes
:获取特定对话的所有内部备注。getConversationRatings
:获取特定对话的所有评分。listTags
:列出 Dixa 中所有可用的标签。tagConversation
:为特定对话添加标签。removeConversationTag
:从特定对话中移除标签。getEndUser
:获取特定最终用户的详细信息。getEndUserConversations
:获取特定最终用户的所有对话。getAgent
:获取特定代理的详细信息。listAgents
:列出所有代理,可选过滤。getAnalyticsMetric
:获取特定分析指标的详细信息。getAnalyticsRecord
:获取特定分析记录的详细信息。listAnalyticsRecords
:列出所有可用的分析记录 ID。listAnalyticsMetrics
:列出所有可用的分析指标 ID。getAnalyticsFilter
:获取给定分析过滤器属性的可能值。getAnalyticsRecordsData
:使用过滤器和时间段获取特定记录的分析数据。getAnalyticsMetricsData
:使用过滤器、时间段和聚合获取特定指标的分析数据。