mcp

package
v0.0.0-...-311e34c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Overview

Package mcp implements MCP client for executing tool calls on behalf of cloud.

Index

Constants

View Source
const (
	DefaultConnectTimeout = 30 * time.Second
	DefaultCallTimeout    = 60 * time.Second
)

Variables

This section is empty.

Functions

func CallTool

func CallTool(ctx context.Context, server *protocol.MCPServerConfig, toolName string, arguments map[string]any) (*sdk_mcp.CallToolResult, error)

CallTool executes a single MCP tool call using the default manager.

func ExtractContent

func ExtractContent(result *sdk_mcp.CallToolResult) string

ExtractContent extracts text content from MCP CallToolResult.

func ListTools

func ListTools(ctx context.Context, server *protocol.MCPServerConfig) ([]*sdk_mcp.Tool, error)

ListTools lists available tools from an MCP server using the default manager.

func NewSSETransport

func NewSSETransport(endpoint string, headers map[string]string, dynamicHeaders map[string]string) sdk_mcp.Transport

NewSSETransport creates a new SSE transport for MCP.

func NewStdioTransport

func NewStdioTransport(command string, args []string, env map[string]string) sdk_mcp.Transport

NewStdioTransport creates a new stdio transport for MCP.

Types

type CallToolResult

type CallToolResult = sdk_mcp.CallToolResult

Re-export SDK types for use by other packages.

type ClientManager

type ClientManager struct {
	// contains filtered or unexported fields
}

ClientManager manages MCP server connections and sessions.

func GetDefaultManager

func GetDefaultManager() *ClientManager

GetDefaultManager returns a singleton ClientManager.

func NewClientManager

func NewClientManager() *ClientManager

NewClientManager creates a new ClientManager.

func (*ClientManager) CallTool

func (m *ClientManager) CallTool(ctx context.Context, server *protocol.MCPServerConfig, toolName string, arguments map[string]any, logger *slog.Logger) (*sdk_mcp.CallToolResult, error)

CallTool executes a single MCP tool call using the manager for session persistence.

func (*ClientManager) Close

func (m *ClientManager) Close()

Close closes all active sessions and clients.

func (*ClientManager) GetSession

GetSession returns or creates an MCP session for the given server.

func (*ClientManager) ListTools

func (m *ClientManager) ListTools(ctx context.Context, server *protocol.MCPServerConfig) ([]*sdk_mcp.Tool, error)

ListTools lists available tools from an MCP server using the manager for session persistence.

type ImageContent

type ImageContent = sdk_mcp.ImageContent

Re-export SDK types for use by other packages.

type TextContent

type TextContent = sdk_mcp.TextContent

Re-export SDK types for use by other packages.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL