mcp-execution-skill 0.9.0

SKILL.md generation for Claude Code integration with MCP tools
Documentation
//! Skill generation for MCP progressive loading.
//!
//! This crate provides functionality to generate Claude Code skill files (SKILL.md)
//! from generated progressive loading TypeScript files.
//!
//! # Architecture
//!
//! The skill generation flow:
//! 1. `parser` - Reads the `_meta.json` sidecar emitted by codegen
//! 2. `context` - Builds structured context from parsed tools
//! 3. `template` - Renders Handlebars template with context
//!
//! # Examples
//!
//! ```no_run
//! use mcp_execution_skill::{scan_tools_directory, build_skill_context, ScanError};
//! use std::path::Path;
//!
//! # async fn example() -> Result<(), ScanError> {
//! let result = scan_tools_directory(Path::new("~/.claude/servers/github")).await?;
//! let context = build_skill_context("github", &result.tools, None);
//! # Ok(())
//! # }
//! ```
#![warn(missing_docs, missing_debug_implementations)]

mod context;
mod output_path;
mod parser;
mod template;
pub mod types;

pub use context::build_skill_context;
pub use output_path::{OutputPathError, resolve_skill_output_path};
pub use parser::{
    MAX_FILE_SIZE, MAX_FRONTMATTER_SIZE, MAX_TOOL_FILES, ParsedParameter, ParsedToolFile,
    ScanError, ScanResult, SkillMetadataError, extract_skill_metadata, scan_tools_directory,
};
pub use template::{TemplateError, render_generation_prompt, render_skill_md};
pub use types::{
    GenerateSkillParams, GenerateSkillResult, MAX_SERVER_ID_LENGTH, SaveSkillParams,
    SaveSkillResult, SkillCategory, SkillMetadata, SkillServerIdError, SkillTool, ToolExample,
    validate_server_id,
};