Documentation
¶
Overview ¶
Package tools implements the MCP tools served by the cockroachdb-mcp-server.
Index ¶
- type CreateDatabaseParams
- type CreateTableParams
- type DBManager
- type DeleteRowsParams
- type ExplainQueryParams
- type InsertRowsParams
- type ListDatabasesParams
- type ListSQLUsersParams
- type ListTablesParams
- type MCPQueryResult
- type PaginationParams
- type SelectQueryParams
- type ShowRunningQueriesParams
- type ShowStatementParams
- type TableSchemaParams
- type ToolHandlers
- type UpdateRowsParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateDatabaseParams ¶
type CreateDatabaseParams struct {
Name string `json:"name" jsonschema:"Database name to create."`
IfNotExists bool `json:"if_not_exists,omitempty" jsonschema:"When true, the statement is a no-op if the database already exists."`
}
CreateDatabaseParams contains parameters for the create_database tool.
type CreateTableParams ¶
type CreateTableParams struct {
Statement string `` /* 146-byte string literal not displayed */
}
CreateTableParams contains parameters for the create_table tool.
type DBManager ¶
type DBManager interface {
Query(ctx context.Context, sql string) (*db.QueryResult, error)
Exec(ctx context.Context, sql string) (int64, error)
}
DBManager is the narrow database surface that tool handlers depend on. The real *db.Manager satisfies it; tests use a fake.
type DeleteRowsParams ¶
type DeleteRowsParams struct {
Statement string `` /* 214-byte string literal not displayed */
}
DeleteRowsParams contains parameters for the delete_rows tool.
type ExplainQueryParams ¶
type ExplainQueryParams struct {
Query string `` /* 296-byte string literal not displayed */
}
ExplainQueryParams contains parameters for the explain_query tool.
type InsertRowsParams ¶
type InsertRowsParams struct {
Statement string `` /* 186-byte string literal not displayed */
}
InsertRowsParams contains parameters for the insert_rows tool.
type ListDatabasesParams ¶
type ListDatabasesParams struct {
PaginationParams
}
ListDatabasesParams contains parameters for the list_databases tool.
type ListSQLUsersParams ¶
type ListSQLUsersParams struct {
PaginationParams
}
ListSQLUsersParams contains parameters for the list_sql_users tool.
type ListTablesParams ¶
type ListTablesParams struct {
Database string `json:"database" jsonschema:"Database whose tables are listed."`
PaginationParams
}
ListTablesParams contains parameters for the list_tables tool.
type MCPQueryResult ¶
type MCPQueryResult struct {
Rows []json.RawMessage `json:"rows"`
}
MCPQueryResult is the rows-shaped response returned by tabular read tools; get_cluster returns a flat object via writeOK instead.
type PaginationParams ¶
type PaginationParams struct {
Limit *int64 `json:"limit,omitempty" jsonschema:"Max rows to return. Defaults to 100, capped at CRDB_MCP_MAX_ROWS_COUNT (default 10000)."`
Offset *int64 `json:"offset,omitempty" jsonschema:"Rows to skip before returning results. Must be zero or positive. Defaults to 0."`
}
PaginationParams contains optional pagination parameters for list operations.
type SelectQueryParams ¶
type SelectQueryParams struct {
Query string `` /* 174-byte string literal not displayed */
}
SelectQueryParams contains parameters for the select_query tool.
type ShowRunningQueriesParams ¶
type ShowRunningQueriesParams struct {
PaginationParams
}
ShowRunningQueriesParams contains parameters for the show_running_queries tool.
type ShowStatementParams ¶
type ShowStatementParams struct {
Query string `` /* 173-byte string literal not displayed */
PaginationParams
}
ShowStatementParams contains parameters for the show_statement tool.
type TableSchemaParams ¶
type TableSchemaParams struct {
Database string `json:"database" jsonschema:"Database containing the table."`
Schema string `json:"schema,omitempty" jsonschema:"Schema name. Defaults to 'public' when omitted."`
Table string `json:"table" jsonschema:"Table name."`
}
TableSchemaParams contains parameters for the get_table_schema tool. Schema defaults to "public" when empty.
type ToolHandlers ¶
type ToolHandlers struct {
// contains filtered or unexported fields
}
ToolHandlers wires MCP tool handlers to the underlying database querier and server configuration.
func NewToolHandlers ¶
func NewToolHandlers(dm DBManager, cfg *config.Config) *ToolHandlers
NewToolHandlers constructs a handler bundle bound to the given database and server configuration.
func (*ToolHandlers) RegisterTools ¶
func (h *ToolHandlers) RegisterTools(server *mcp.Server)
RegisterTools registers all MCP tools on the server. mcp.AddTool derives each tool's schema from its typed params struct (jsonschema tags) and validates input upstream.
type UpdateRowsParams ¶
type UpdateRowsParams struct {
Statement string `` /* 214-byte string literal not displayed */
}
UpdateRowsParams contains parameters for the update_rows tool.