Replace mcp_core::prompt with rmcp::model types (#3561)

This commit is contained in:
Jack Amadeo
2025-07-21 21:33:33 -04:00
committed by GitHub
parent 09e555941d
commit 0a98f431c6
18 changed files with 23 additions and 234 deletions
+2 -1
View File
@@ -397,9 +397,10 @@ impl Validator for GooseCompleter {
#[cfg(test)]
mod tests {
use rmcp::model::PromptArgument;
use super::*;
use crate::session::output;
use mcp_core::prompt::PromptArgument;
use std::sync::{Arc, RwLock};
// Helper function to create a test completion cache
+1 -28
View File
@@ -362,34 +362,7 @@ impl Session {
}
pub async fn get_prompt(&mut self, name: &str, arguments: Value) -> Result<Vec<PromptMessage>> {
let result = self.agent.get_prompt(name, arguments).await?;
// Convert mcp_core::prompt::PromptMessage to rmcp::model::PromptMessage
let converted_messages = result
.messages
.into_iter()
.map(|msg| rmcp::model::PromptMessage {
role: match msg.role {
mcp_core::prompt::PromptMessageRole::User => {
rmcp::model::PromptMessageRole::User
}
mcp_core::prompt::PromptMessageRole::Assistant => {
rmcp::model::PromptMessageRole::Assistant
}
},
content: match msg.content {
mcp_core::prompt::PromptMessageContent::Text { text } => {
rmcp::model::PromptMessageContent::Text { text }
}
mcp_core::prompt::PromptMessageContent::Image { image } => {
rmcp::model::PromptMessageContent::Image { image }
}
mcp_core::prompt::PromptMessageContent::Resource { resource } => {
rmcp::model::PromptMessageContent::Resource { resource }
}
},
})
.collect();
Ok(converted_messages)
Ok(self.agent.get_prompt(name, arguments).await?.messages)
}
/// Process a single message and get the response
+1 -1
View File
@@ -4,9 +4,9 @@ use goose::config::Config;
use goose::message::{Message, MessageContent, ToolRequest, ToolResponse};
use goose::providers::pricing::get_model_pricing;
use indicatif::{MultiProgress, ProgressBar, ProgressStyle};
use mcp_core::prompt::PromptArgument;
use mcp_core::tool::ToolCall;
use regex::Regex;
use rmcp::model::PromptArgument;
use serde_json::Value;
use std::cell::RefCell;
use std::collections::HashMap;