#[mcp_prompt]Expand description
Automatically generates MCP prompt definitions from Rust functions.
This macro transforms regular Rust functions into MCP prompts with automatic argument validation and prompt message generation.
§Basic Usage
ⓘ
use pulseengine_mcp_macros::mcp_prompt;
#[mcp_prompt(name = "code_review")]
async fn generate_code_review(&self, code: String, language: String) -> Result<PromptMessage, Error> {
// Generate prompt for code review
}§With Custom Configuration
ⓘ
#[mcp_prompt(
name = "sql_query_helper",
description = "Generate SQL queries based on natural language",
arguments = ["description", "table_schema", "output_format"]
)]
async fn sql_helper(&self, description: String, table_schema: String, output_format: String) -> Result<PromptMessage, Error> {
// Implementation
}§Parameters
name: Optional custom prompt name (defaults to function name)description: Optional custom description (defaults to doc comments)arguments: Optional array of argument names for documentation
§Features
- Argument Validation: Automatic validation of prompt arguments
- Type Safety: Compile-time validation of parameter types
- Auto-Documentation: Uses function doc comments as prompt descriptions
- Error Handling: Converts function errors to MCP protocol errors
- Schema Generation: Automatic argument schema generation