Signal Receivers

Django Signal Receivers for mcpclient.

Note

Experimental. The MCPClient was designed and coded by Claude Code (Anthropic’s Claude Opus 5.5), with Lawrence McDaniel as co-author. It is experimental, and will be documented.

smarter.apps.mcpclient.receivers.handle_mcpclient_connected(sender, mcpclient, catalog, **kwargs)[source]

Log a successful connection to an MCP server.

smarter.apps.mcpclient.receivers.handle_mcpclient_connection_failed(sender, mcpclient, error, **kwargs)[source]

Log a failed connection to an MCP server.

smarter.apps.mcpclient.receivers.handle_mcpclient_resource_read(sender, mcpclient, uri, characters, **kwargs)[source]

Log a resource read.

smarter.apps.mcpclient.receivers.handle_mcpclient_tool_called(sender, mcpclient, tool_name, arguments, **kwargs)[source]

Log a tool call.

The arguments are not logged, because they may contain user data.

smarter.apps.mcpclient.receivers.handle_mcpclient_tool_failed(sender, mcpclient, tool_name, error, **kwargs)[source]

Log a failed tool call.

smarter.apps.mcpclient.receivers.handle_mcpclient_tool_responded(sender, mcpclient, tool_name, is_error, characters, **kwargs)[source]

Log a tool’s result.

smarter.apps.mcpclient.receivers.mcpclient_deleted(sender, instance, **kwargs)[source]

Log the MCPClient, and invalidate its cached catalog.

smarter.apps.mcpclient.receivers.mcpclient_saved(sender, instance, created, **kwargs)[source]

Log the MCPClient, and refresh its catalog once the transaction commits.

Status updates are made with queryset updates, which do not send post_save, so this runs only when the MCPClient’s configuration is saved.