mcp-tools-sdk 0.4.0

An SDK for parsing and manipulating mcp tool descriptions and input/output data.
Documentation

MCP Tools SDK

This crate contains an SDK for parsing and manipulating Model Context Protocol (MCP) tool descriptions. Specifically, the SDK is designed in a way in which any MCP tool description can be parsed into a generic ToolDescription struct which allows for meta-mcp tools to process the tool descriptions without needing to know the exact structure of each concrete mcp tool.

Example Usage

mcp_tool.json

{
    "name": "MyCoolTool",
    "description": "A cool tool made by me!",
    "inputSchema": {
        "type": "object",
        "properties": {
            "cool_attr": { "type": "string" }
        },
        "required": ["cool_attr"]
    }
}
use mcp_tools_sdk::description::ToolDescription;

fn main() {
    let tool = ToolDescription::from_json_file("mcp_tool.json").expect("Tool description should have parsed.");
    println!("{}: {}", tool.name(), tool.description().unwrap_or(""))
}