MCPcopy Create free account
hub / github.com/ScriptedAlchemy/tracedecay / record_mcp_tool_error_analytics

Method record_mcp_tool_error_analytics

src/mcp/server.rs:2704–2733  ·  view source on GitHub ↗
(
        &self,
        project_root: &std::path::Path,
        session_id: Option<String>,
        tool_name: &str,
        request_id: &Value,
        arguments: &Value,
    )

Source from the content-addressed store, hash-verified

2702 }
2703
2704 fn record_mcp_tool_error_analytics(
2705 &self,
2706 project_root: &std::path::Path,
2707 session_id: Option<String>,
2708 tool_name: &str,
2709 request_id: &Value,
2710 arguments: &Value,
2711 ) {
2712 let Some(gdb) = self.global_db.clone() else {
2713 return;
2714 };
2715 let event = mcp_tool_analytics_event(McpToolAnalyticsEvent {
2716 project_root,
2717 session_id,
2718 tool_name,
2719 outcome: "error",
2720 raw_file_tokens: 0,
2721 response_tokens: 0,
2722 net_saved_tokens: 0,
2723 timestamp: crate::tracedecay::current_timestamp(),
2724 request_id,
2725 arguments,
2726 internal_analytics: None,
2727 });
2728 self.spawn_observed_ledger_write(async move {
2729 if let Err(e) = gdb.append_analytics_event(&event).await {
2730 eprintln!("[tracedecay] analytics_events insert failed: {e}");
2731 }
2732 });
2733 }
2734
2735 fn record_hook_route_analytics(
2736 &self,

Callers 1

handle_tools_callMethod · 0.80

Calls 4

mcp_tool_analytics_eventFunction · 0.85
current_timestampFunction · 0.85

Tested by

no test coverage detected