mcppool

package
v0.6.2 Latest Latest
Warning

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

Go to latest
Published: Dec 26, 2025 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type JSONRPCRequest

type JSONRPCRequest struct {
	JSONRPC string      `json:"jsonrpc"`
	Method  string      `json:"method"`
	Params  interface{} `json:"params,omitempty"`
	ID      interface{} `json:"id,omitempty"`
}

type JSONRPCResponse

type JSONRPCResponse struct {
	JSONRPC string      `json:"jsonrpc"`
	Result  interface{} `json:"result,omitempty"`
	Error   interface{} `json:"error,omitempty"`
	ID      interface{} `json:"id,omitempty"`
}

type Pool

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

func NewPool

func NewPool(ctx context.Context, config *PoolConfig) (*Pool, error)

func (*Pool) GetSocketPath

func (p *Pool) GetSocketPath(name string) string

func (*Pool) GetURL

func (p *Pool) GetURL(name string) string

func (*Pool) IsRunning

func (p *Pool) IsRunning(name string) bool

func (*Pool) ListServers

func (p *Pool) ListServers() []ProxyInfo

func (*Pool) ShouldPool

func (p *Pool) ShouldPool(mcpName string) bool

func (*Pool) Shutdown

func (p *Pool) Shutdown() error

func (*Pool) Start

func (p *Pool) Start(name, command string, args []string, env map[string]string) error

type PoolConfig

type PoolConfig struct {
	Enabled       bool
	PoolAll       bool
	ExcludeMCPs   []string
	PoolMCPs      []string
	FallbackStdio bool
}

type ProxyInfo

type ProxyInfo struct {
	Name       string
	SocketPath string
	Status     string
	Clients    int
}

type ServerStatus

type ServerStatus int

ServerStatus represents MCP server state

const (
	StatusStopped ServerStatus = iota
	StatusStarting
	StatusRunning
	StatusFailed
)

func (ServerStatus) String

func (s ServerStatus) String() string

type SocketProxy

type SocketProxy struct {
	Status ServerStatus
	// contains filtered or unexported fields
}

SocketProxy wraps a stdio MCP process with a Unix socket

func NewSocketProxy

func NewSocketProxy(ctx context.Context, name, command string, args []string, env map[string]string) (*SocketProxy, error)

func (*SocketProxy) GetClientCount

func (p *SocketProxy) GetClientCount() int

func (*SocketProxy) GetSocketPath

func (p *SocketProxy) GetSocketPath() string

func (*SocketProxy) HealthCheck

func (p *SocketProxy) HealthCheck() error

func (*SocketProxy) Start

func (p *SocketProxy) Start() error

func (*SocketProxy) Stop

func (p *SocketProxy) Stop() error

Jump to

Keyboard shortcuts

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