From 203d4a93e1aaa5e325e8e6999bf26fa092f3d424 Mon Sep 17 00:00:00 2001 From: main Date: Fri, 20 Mar 2026 20:17:39 -0400 Subject: Adopt typed MCP projections and polish UI --- crates/fidget-spinner-cli/src/mcp/host/runtime.rs | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'crates/fidget-spinner-cli/src/mcp/host/runtime.rs') diff --git a/crates/fidget-spinner-cli/src/mcp/host/runtime.rs b/crates/fidget-spinner-cli/src/mcp/host/runtime.rs index f2f10b7..bacf1c8 100644 --- a/crates/fidget-spinner-cli/src/mcp/host/runtime.rs +++ b/crates/fidget-spinner-cli/src/mcp/host/runtime.rs @@ -21,7 +21,9 @@ use crate::mcp::catalog::{ DispatchTarget, list_resources, resource_spec, tool_definitions, tool_spec, }; use crate::mcp::fault::{FaultKind, FaultRecord, FaultStage}; -use crate::mcp::output::{ToolOutput, detailed_tool_output, split_presentation, tool_success}; +use crate::mcp::output::{ + ToolOutput, fallback_detailed_tool_output, split_presentation, tool_success, +}; use crate::mcp::protocol::{ CRASH_ONCE_ENV, FORCE_ROLLOUT_ENV, HOST_STATE_ENV, HostRequestId, HostStateSeed, PROTOCOL_VERSION, ProjectBindingSeed, SERVER_NAME, WorkerOperation, WorkerSpawnConfig, @@ -749,7 +751,7 @@ fn project_bind_output(status: &ProjectBindStatus) -> Result Result Result { .iter() .map(|skill| format!("{}: {}", skill.name, skill.description)), ); - detailed_tool_output( + fallback_detailed_tool_output( &concise, &json!({ "skills": skills }), lines.join("\n"), None, + libmcp::SurfaceKind::List, FaultStage::Host, "tools/call:skill.list", ) } fn skill_show_output(skill: crate::bundled_skill::BundledSkill) -> Result { - detailed_tool_output( + fallback_detailed_tool_output( &json!({ "name": skill.name, "resource_uri": skill.resource_uri, @@ -812,6 +816,7 @@ fn skill_show_output(skill: crate::bundled_skill::BundledSkill) -> Result Result Result