Skip to main content

aprender_mcp/tools/
mod.rs

1//! MCP tool implementations for aprender.
2//!
3//! Phase-1 surface (shipped M1–M3):
4//! - M1 scaffold: `apr.version`.
5//! - M2 subprocess wrappers around `apr <cmd> --json`: `apr.validate`,
6//!   `apr.tensors`, `apr.bench`, `apr.qa`, `apr.trace`, `apr.run`, `apr.serve`.
7//! - M3 streaming slice: `apr.finetune` (opt-in `notifications/progress`
8//!   per non-empty stdout line when `params._meta.progressToken` is set —
9//!   see FALSIFY-MCP-PROGRESS-001) + `notifications/cancelled` →
10//!   SIGTERM→SIGKILL for `apr.run` (FALSIFY-MCP-006).
11
12pub mod args;
13#[cfg(feature = "apr-tools")]
14pub mod bench;
15#[cfg(feature = "apr-tools")]
16pub mod finetune;
17#[cfg(feature = "apr-tools")]
18pub mod port_owner;
19#[cfg(feature = "apr-tools")]
20pub mod qa;
21pub mod registry;
22#[cfg(feature = "apr-tools")]
23pub mod run;
24#[cfg(feature = "apr-tools")]
25pub mod serve;
26#[cfg(feature = "apr-tools")]
27pub mod subprocess;
28#[cfg(feature = "apr-tools")]
29pub mod tensors;
30#[cfg(feature = "apr-tools")]
31pub mod trace;
32#[cfg(feature = "apr-tools")]
33pub mod validate;
34#[cfg(feature = "apr-tools")]
35pub mod version;
36
37#[cfg(feature = "apr-tools")]
38pub use registry::McpToolEntry;
39pub use registry::{DispatchFn, ToolIndex};
40
41#[cfg(feature = "apr-tools")]
42pub use bench::bench_tool_definition;
43#[cfg(feature = "apr-tools")]
44pub use finetune::finetune_tool_definition;
45#[cfg(feature = "apr-tools")]
46pub use qa::qa_tool_definition;
47#[cfg(feature = "apr-tools")]
48pub use run::run_tool_definition;
49#[cfg(feature = "apr-tools")]
50pub use serve::serve_tool_definition;
51#[cfg(feature = "apr-tools")]
52pub use tensors::tensors_tool_definition;
53#[cfg(feature = "apr-tools")]
54pub use trace::trace_tool_definition;
55#[cfg(feature = "apr-tools")]
56pub use validate::validate_tool_definition;
57#[cfg(feature = "apr-tools")]
58pub use version::version_tool_definition;