Documentation
¶
Index ¶
- func GetPrompt(name string) (string, bool)
- func IsProxyMCPConfig(name string) bool
- type MCPs
- func (m *MCPs) CallTool(ctx context.Context, callID string, toolName string, args map[string]any) (openai.ChatCompletionMessageParamUnion, error)
- func (m *MCPs) CallToolOpenAI(ctx context.Context, toolCall openai.ChatCompletionChunkChoiceDeltaToolCall) (openai.ChatCompletionMessageParamUnion, error)
- func (m *MCPs) Shutdown()
- type McpClient
- type PromptDef
- type ProxyMCPClient
- func (p *ProxyMCPClient) CallTool(ctx context.Context, request mcp.CallToolRequest) (*mcp.CallToolResult, error)
- func (p *ProxyMCPClient) Close() error
- func (p *ProxyMCPClient) Complete(ctx context.Context, request mcp.CompleteRequest) (*mcp.CompleteResult, error)
- func (p *ProxyMCPClient) GetPrompt(ctx context.Context, request mcp.GetPromptRequest) (*mcp.GetPromptResult, error)
- func (p *ProxyMCPClient) Initialize(ctx context.Context, request mcp.InitializeRequest) (*mcp.InitializeResult, error)
- func (p *ProxyMCPClient) ListPrompts(ctx context.Context, request mcp.ListPromptsRequest) (*mcp.ListPromptsResult, error)
- func (p *ProxyMCPClient) ListPromptsByPage(ctx context.Context, request mcp.ListPromptsRequest) (*mcp.ListPromptsResult, error)
- func (p *ProxyMCPClient) ListResourceTemplates(ctx context.Context, request mcp.ListResourceTemplatesRequest) (*mcp.ListResourceTemplatesResult, error)
- func (p *ProxyMCPClient) ListResourceTemplatesByPage(ctx context.Context, request mcp.ListResourceTemplatesRequest) (*mcp.ListResourceTemplatesResult, error)
- func (p *ProxyMCPClient) ListResources(ctx context.Context, request mcp.ListResourcesRequest) (*mcp.ListResourcesResult, error)
- func (p *ProxyMCPClient) ListResourcesByPage(ctx context.Context, request mcp.ListResourcesRequest) (*mcp.ListResourcesResult, error)
- func (p *ProxyMCPClient) ListTools(ctx context.Context, request mcp.ListToolsRequest) (*mcp.ListToolsResult, error)
- func (p *ProxyMCPClient) ListToolsByPage(ctx context.Context, request mcp.ListToolsRequest) (*mcp.ListToolsResult, error)
- func (p *ProxyMCPClient) OnNotification(handler func(notification mcp.JSONRPCNotification))
- func (p *ProxyMCPClient) Ping(ctx context.Context) error
- func (p *ProxyMCPClient) ReadResource(ctx context.Context, request mcp.ReadResourceRequest) (*mcp.ReadResourceResult, error)
- func (p *ProxyMCPClient) SetLevel(ctx context.Context, request mcp.SetLevelRequest) error
- func (p *ProxyMCPClient) Subscribe(ctx context.Context, request mcp.SubscribeRequest) error
- func (p *ProxyMCPClient) Unsubscribe(ctx context.Context, request mcp.UnsubscribeRequest) error
- type ToolDef
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsProxyMCPConfig ¶ added in v0.2.7
Types ¶
type MCPs ¶
type MCPs struct {
Tools []openai.ChatCompletionToolUnionParam
// contains filtered or unexported fields
}
func (*MCPs) CallToolOpenAI ¶
func (m *MCPs) CallToolOpenAI(ctx context.Context, toolCall openai.ChatCompletionChunkChoiceDeltaToolCall) (openai.ChatCompletionMessageParamUnion, error)
type McpClient ¶
type McpClient struct {
// contains filtered or unexported fields
}
func NewLocalClient ¶
func NewRemoteClient ¶
type PromptDef ¶ added in v0.2.7
type PromptDef struct {
Name string `json:"name" yaml:"name"`
Description string `json:"description" yaml:"description"`
Messages []mcp.PromptMessage `json:"messages" yaml:"messages"`
}
type ProxyMCPClient ¶ added in v0.2.7
type ProxyMCPClient struct {
Tools []ToolDef `json:"tools" yaml:"tools"`
Prompts []PromptDef `json:"prompts" yaml:"prompts"`
// contains filtered or unexported fields
}
ProxyMCPClient 实现了 MCPClient 接口,将 HTTP 服务代理为 MCP 服务
func NewProxyMCPClient ¶ added in v0.2.7
func NewProxyMCPClient(configPath string) (*ProxyMCPClient, error)
NewProxyMCPClient 从配置文件创建一个新的 ProxyMCPClient
func (*ProxyMCPClient) CallTool ¶ added in v0.2.7
func (p *ProxyMCPClient) CallTool( ctx context.Context, request mcp.CallToolRequest, ) (*mcp.CallToolResult, error)
CallTool 实现 MCPClient.CallTool
func (*ProxyMCPClient) Close ¶ added in v0.2.7
func (p *ProxyMCPClient) Close() error
Close 实现 MCPClient.Close
func (*ProxyMCPClient) Complete ¶ added in v0.2.7
func (p *ProxyMCPClient) Complete( ctx context.Context, request mcp.CompleteRequest, ) (*mcp.CompleteResult, error)
Complete 实现 MCPClient.Complete
func (*ProxyMCPClient) GetPrompt ¶ added in v0.2.7
func (p *ProxyMCPClient) GetPrompt( ctx context.Context, request mcp.GetPromptRequest, ) (*mcp.GetPromptResult, error)
GetPrompt 实现 MCPClient.GetPrompt
func (*ProxyMCPClient) Initialize ¶ added in v0.2.7
func (p *ProxyMCPClient) Initialize( ctx context.Context, request mcp.InitializeRequest, ) (*mcp.InitializeResult, error)
Initialize 实现 MCPClient.Initialize
func (*ProxyMCPClient) ListPrompts ¶ added in v0.2.7
func (p *ProxyMCPClient) ListPrompts( ctx context.Context, request mcp.ListPromptsRequest, ) (*mcp.ListPromptsResult, error)
ListPrompts 实现 MCPClient.ListPrompts
func (*ProxyMCPClient) ListPromptsByPage ¶ added in v0.2.7
func (p *ProxyMCPClient) ListPromptsByPage( ctx context.Context, request mcp.ListPromptsRequest, ) (*mcp.ListPromptsResult, error)
ListPromptsByPage 实现 MCPClient.ListPromptsByPage
func (*ProxyMCPClient) ListResourceTemplates ¶ added in v0.2.7
func (p *ProxyMCPClient) ListResourceTemplates( ctx context.Context, request mcp.ListResourceTemplatesRequest, ) (*mcp.ListResourceTemplatesResult, error)
ListResourceTemplates 实现 MCPClient.ListResourceTemplates
func (*ProxyMCPClient) ListResourceTemplatesByPage ¶ added in v0.2.7
func (p *ProxyMCPClient) ListResourceTemplatesByPage( ctx context.Context, request mcp.ListResourceTemplatesRequest, ) (*mcp.ListResourceTemplatesResult, error)
ListResourceTemplatesByPage 实现 MCPClient.ListResourceTemplatesByPage
func (*ProxyMCPClient) ListResources ¶ added in v0.2.7
func (p *ProxyMCPClient) ListResources( ctx context.Context, request mcp.ListResourcesRequest, ) (*mcp.ListResourcesResult, error)
ListResources 实现 MCPClient.ListResources
func (*ProxyMCPClient) ListResourcesByPage ¶ added in v0.2.7
func (p *ProxyMCPClient) ListResourcesByPage( ctx context.Context, request mcp.ListResourcesRequest, ) (*mcp.ListResourcesResult, error)
ListResourcesByPage 实现 MCPClient.ListResourcesByPage
func (*ProxyMCPClient) ListTools ¶ added in v0.2.7
func (p *ProxyMCPClient) ListTools( ctx context.Context, request mcp.ListToolsRequest, ) (*mcp.ListToolsResult, error)
ListTools 实现 MCPClient.ListTools
func (*ProxyMCPClient) ListToolsByPage ¶ added in v0.2.7
func (p *ProxyMCPClient) ListToolsByPage( ctx context.Context, request mcp.ListToolsRequest, ) (*mcp.ListToolsResult, error)
ListToolsByPage 实现 MCPClient.ListToolsByPage
func (*ProxyMCPClient) OnNotification ¶ added in v0.2.7
func (p *ProxyMCPClient) OnNotification(handler func(notification mcp.JSONRPCNotification))
OnNotification 实现 MCPClient.OnNotification
func (*ProxyMCPClient) Ping ¶ added in v0.2.7
func (p *ProxyMCPClient) Ping(ctx context.Context) error
Ping 实现 MCPClient.Ping
func (*ProxyMCPClient) ReadResource ¶ added in v0.2.7
func (p *ProxyMCPClient) ReadResource( ctx context.Context, request mcp.ReadResourceRequest, ) (*mcp.ReadResourceResult, error)
ReadResource 实现 MCPClient.ReadResource
func (*ProxyMCPClient) SetLevel ¶ added in v0.2.7
func (p *ProxyMCPClient) SetLevel(ctx context.Context, request mcp.SetLevelRequest) error
SetLevel 实现 MCPClient.SetLevel
func (*ProxyMCPClient) Subscribe ¶ added in v0.2.7
func (p *ProxyMCPClient) Subscribe(ctx context.Context, request mcp.SubscribeRequest) error
Subscribe 实现 MCPClient.Subscribe
func (*ProxyMCPClient) Unsubscribe ¶ added in v0.2.7
func (p *ProxyMCPClient) Unsubscribe(ctx context.Context, request mcp.UnsubscribeRequest) error
Unsubscribe 实现 MCPClient.Unsubscribe
type ToolDef ¶ added in v0.2.7
type ToolDef struct {
Name string `json:"name" yaml:"name"`
URL string `json:"url" yaml:"url"`
Method string `json:"method,omitempty" yaml:"method,omitempty"`
Description string `json:"description,omitempty" yaml:"description,omitempty"`
InputSchema mcp.ToolInputSchema `json:"inputSchema,omitempty" yaml:"inputSchema,omitempty"`
}