Skip to main content

nexql_tools/
lib.rs

1// SPDX-License-Identifier: GPL-3.0-only
2// Copyright (C) 2026 NexQL-OSS Team
3
4//! Tool catalog and executors.
5//!
6//! Tools return typed results; the protocol layer serializes them.
7//! This crate must NOT depend on `nexql-proto`.
8
9pub mod cell_json;
10pub mod completions;
11pub mod dba_guard;
12pub mod detect;
13pub mod error;
14pub mod exec;
15pub mod export;
16pub mod plan;
17pub mod prompts;
18pub mod registry;
19pub mod resources;
20pub mod schema;
21pub mod schema_diff;
22pub mod session;
23pub mod sql;
24pub mod write;
25
26pub use completions::{CompletionResult, CompletionsProvider};
27pub use detect::{ConnectionDetector, DetectedCandidate};
28pub use error::ToolError;
29pub use exec::{ToolOutcome, ToolRouter};
30pub use prompts::{PromptCatalog, PromptError, PromptGetResult, PromptInfo};
31pub use registry::{ToolName, ToolProfile};
32pub use resources::{
33    McpResource, ResourceError, ResourceListResult, ResourceProvider, ResourceReadResult,
34    decode_cursor, encode_cursor_state, parse_uri,
35};
36pub use schema::{
37    ToolSpec, active_tools, generate_mermaid_diagram_for_path, generate_mermaid_erd_for_object,
38    phase2_catalog_tools, phase3_index_tools, phase4_tools, phase4b_tools, phase9_write_tools,
39    tools_for_profile,
40};
41pub use session::{
42    ConnectionInfo, ConnectionPolicy, ToolSession, default_index_root, policy_from_profile,
43};