Documentation
¶
Index ¶
- type MCPManager
- func (manager *MCPManager) CallTool(ctx context.Context, name, argsJSON string) (string, error)
- func (manager *MCPManager) Close()
- func (manager *MCPManager) DiscoverTools(ctx context.Context) ([]llms.Tool, error)
- func (manager *MCPManager) RegisterNativeTool(tool llms.Tool, handler NativeToolHandler)
- type NativeToolHandler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MCPManager ¶
type MCPManager struct {
// contains filtered or unexported fields
}
MCPManager holds multiple MCP sessions and routes tool calls to the correct server based on tool name.
func ConnectMCP ¶
func ConnectMCP(ctx context.Context, agentName string) (*MCPManager, error)
ConnectMCP connects to all configured MCP servers over HTTP.
Jira: JIRA_MCP_URL → Streamable HTTP transport
Environment variables for Jira (must be configured on the MCP server side):
JIRA_URL, JIRA_USERNAME, JIRA_TOKEN
func NewMCPManager ¶
func NewMCPManager() *MCPManager
NewMCPManager creates a bare MCPManager with no sessions, useful when only native tools are needed.
func (*MCPManager) CallTool ¶
CallTool forwards a tool call to the MCP server or native handler that owns the tool.
func (*MCPManager) Close ¶
func (manager *MCPManager) Close()
Close closes all managed MCP sessions.
func (*MCPManager) DiscoverTools ¶
DiscoverTools lists all tools from every connected MCP server and converts them to langchaingo tool definitions that Claude can call.
func (*MCPManager) RegisterNativeTool ¶
func (manager *MCPManager) RegisterNativeTool(tool llms.Tool, handler NativeToolHandler)
RegisterNativeTool registers a Go-native tool handler with its langchaingo tool definition so it can be discovered and called alongside MCP tools.