(
mcp_service: &bitfun_core::service::mcp::MCPService,
server_id: &str,
refresh: bool,
)
| 84 | } |
| 85 | |
| 86 | async fn load_mcp_resources( |
| 87 | mcp_service: &bitfun_core::service::mcp::MCPService, |
| 88 | server_id: &str, |
| 89 | refresh: bool, |
| 90 | ) -> Result<Vec<MCPResource>, String> { |
| 91 | let manager = mcp_service.server_manager(); |
| 92 | let mut resources = manager.get_cached_resources(server_id).await; |
| 93 | |
| 94 | if refresh || resources.is_empty() { |
| 95 | manager |
| 96 | .refresh_server_resource_catalog(server_id) |
| 97 | .await |
| 98 | .map_err(|e| e.to_string())?; |
| 99 | resources = manager.get_cached_resources(server_id).await; |
| 100 | } |
| 101 | |
| 102 | Ok(resources) |
| 103 | } |
| 104 | |
| 105 | async fn load_mcp_prompts( |
| 106 | mcp_service: &bitfun_core::service::mcp::MCPService, |
no test coverage detected