این نمونه‌ای از یک سرور MCP به زبان Rust است بخش ماشین حساب به این صورت است: ```rust #[derive(Debug, serde::Deserialize, schemars::JsonSchema)] pub struct CalculatorRequest { pub a: f64, pub b: f64, } #[tool_router] impl Calculator { #[tool(description = "Adds a and b")] async fn add( &self, Parameters(CalculatorRequest { a, b }): Parameters, ) -> String { (a + b).to_string() } #[tool(description = "Subtracts b from a")] async fn subtract( &self, Parameters(CalculatorRequest { a, b }): Parameters, ) -> String { (a - b).to_string() } #[tool(description = "Multiply a with b")] async fn multiply( &self, Parameters(CalculatorRequest { a, b }): Parameters, ) -> String { (a * b).to_string() } #[tool(description = "Divides a by b")] async fn divide( &self, Parameters(CalculatorRequest { a, b }): Parameters, ) -> String { if b == 0.0 { "Error: Division by zero".to_string() } else { (a / b).to_string() } } } ``` ## نصب دستور زیر را اجرا کنید: ```bash cargo build ``` ## اجرا ```bash cargo run ``` **سلب مسئولیت**: این سند با استفاده از سرویس ترجمه هوش مصنوعی [Co-op Translator](https://github.com/Azure/co-op-translator) ترجمه شده است. در حالی که ما تلاش می‌کنیم دقت را حفظ کنیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نادرستی‌ها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، توصیه می‌شود از ترجمه انسانی حرفه‌ای استفاده کنید. ما مسئولیتی در قبال سوء تفاهم‌ها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.