Files
chatlog/internal/chatlog/mcp/const.go
Sarv b4378a63a3 adjust message handing (#22)
* adjust message handing

* mcp required args
2025-04-09 00:02:55 +08:00

100 lines
3.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package mcp
import (
"github.com/sjzar/chatlog/internal/mcp"
)
// MCPTools 和资源定义
var (
InitializeResponse = mcp.InitializeResponse{
ProtocolVersion: mcp.ProtocolVersion,
Capabilities: mcp.DefaultCapabilities,
ServerInfo: mcp.ServerInfo{
Name: "chatlog",
Version: "0.0.1",
},
}
ToolContact = mcp.Tool{
Name: "query_contact",
Description: "查询用户的联系人信息。可以通过姓名、备注名或ID进行查询返回匹配的联系人列表。当用户询问某人的联系方式、想了解联系人信息或需要查找特定联系人时使用此工具。参数为空时将返回联系人列表",
InputSchema: mcp.ToolSchema{
Type: "object",
Properties: mcp.M{
"query": mcp.M{
"type": "string",
"description": "联系人的搜索关键词可以是姓名、备注名或ID。",
},
},
Required: []string{"query"},
},
}
ToolChatRoom = mcp.Tool{
Name: "query_chat_room",
Description: "查询用户参与的群聊信息。可以通过群名称、群ID或相关关键词进行查询返回匹配的群聊列表。当用户询问群聊信息、想了解某个群的详情或需要查找特定群聊时使用此工具。",
InputSchema: mcp.ToolSchema{
Type: "object",
Properties: mcp.M{
"query": mcp.M{
"type": "string",
"description": "群聊的搜索关键词可以是群名称、群ID或相关描述",
},
},
Required: []string{"query"},
},
}
ToolRecentChat = mcp.Tool{
Name: "query_recent_chat",
Description: "查询最近会话列表,包括个人聊天和群聊。当用户想了解最近的聊天记录、查看最近联系过的人或群组时使用此工具。不需要参数,直接返回最近的会话列表。",
InputSchema: mcp.ToolSchema{
Type: "object",
Properties: mcp.M{},
},
}
ToolChatLog = mcp.Tool{
Name: "chatlog",
Description: "查询特定时间或时间段内与特定联系人或群组的聊天记录。当用户需要回顾过去的对话内容、查找特定信息或想了解与某人/某群的历史交流时使用此工具。",
InputSchema: mcp.ToolSchema{
Type: "object",
Properties: mcp.M{
"time": mcp.M{
"type": "string",
"description": "查询的时间点或时间段。可以是具体时间,例如 YYYY-MM-DD也可以是时间段例如 YYYY-MM-DD~YYYY-MM-DD时间段之间用\"~\"分隔。",
},
"talker": mcp.M{
"type": "string",
"description": "交谈对象可以是联系人或群聊。支持使用ID、昵称、备注名等进行查询。",
},
},
Required: []string{"time", "talker"},
},
}
ResourceRecentChat = mcp.Resource{
Name: "最近会话",
URI: "session://recent",
Description: "获取最近的聊天会话列表",
}
ResourceTemplateContact = mcp.ResourceTemplate{
Name: "联系人信息",
URITemplate: "contact://{username}",
Description: "获取指定联系人的详细信息",
}
ResourceTemplateChatRoom = mcp.ResourceTemplate{
Name: "群聊信息",
URITemplate: "chatroom://{roomid}",
Description: "获取指定群聊的详细信息",
}
ResourceTemplateChatlog = mcp.ResourceTemplate{
Name: "聊天记录",
URITemplate: "chatlog://{talker}/{timeframe}?limit,offset",
Description: "获取与特定联系人或群聊的聊天记录",
}
)