Skip to content

Conversation

@Dumbris
Copy link
Contributor

@Dumbris Dumbris commented Jan 12, 2026

Summary

  • Add 4 new activity event types: system_start, system_stop, internal_tool_call, config_change
  • Implement multi-type filtering with OR logic (comma-separated types in API and CLI)
  • Log system startup/shutdown events with version and duration metadata
  • Log all internal MCP tool calls (retrieve_tools, call_tool_*, code_execution, upstream_servers, etc.)
  • Log configuration changes with action, affected entity, and changed values
  • Web UI: multi-select dropdown filter, Intent column with tooltips, sortable columns, Activity Log in sidebar
  • CLI: support comma-separated --type values for multi-type filtering

Test plan

  • Unit tests pass (go test ./internal/...)
  • Linter passes (./scripts/run-linter.sh)
  • E2E tests pass (./scripts/test-api-e2e.sh)
  • Go and Vue builds succeed
  • CLI validation works for new event types
  • Manual Web UI testing for multi-select filter, sorting, intent column

🤖 Generated with Claude Code

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Jan 12, 2026

Deploying mcpproxy-docs with  Cloudflare Pages  Cloudflare Pages

Latest commit: 7886ccb
Status: ✅  Deploy successful!
Preview URL: https://8f49384a.mcpproxy-docs.pages.dev
Branch Preview URL: https://024-expand-activity-log.mcpproxy-docs.pages.dev

View logs

@Dumbris Dumbris force-pushed the 024-expand-activity-log branch from 81e119e to b3dd605 Compare January 12, 2026 19:44
@github-actions
Copy link

github-actions bot commented Jan 12, 2026

📦 Build Artifacts

Workflow Run: View Run
Branch: 024-expand-activity-log

Available Artifacts

  • archive-darwin-amd64 (23 MB)
  • archive-darwin-arm64 (21 MB)
  • archive-linux-amd64 (12 MB)
  • archive-linux-arm64 (11 MB)
  • archive-windows-amd64 (23 MB)
  • archive-windows-arm64 (20 MB)
  • frontend-dist-pr (0 MB)
  • installer-dmg-darwin-amd64 (26 MB)
  • installer-dmg-darwin-arm64 (23 MB)

How to Download

Option 1: GitHub Web UI (easiest)

  1. Go to the workflow run page linked above
  2. Scroll to the bottom "Artifacts" section
  3. Click on the artifact you want to download

Option 2: GitHub CLI

gh run download 20970324618 --repo smart-mcp-proxy/mcpproxy-go

Note: Artifacts expire in 14 days.

Add comprehensive activity logging for system lifecycle, internal tool
calls, and configuration changes:

- Add 4 new activity types: system_start, system_stop, internal_tool_call,
  config_change
- Implement multi-type filtering with OR logic (comma-separated types)
- Log system startup/shutdown events with version and duration metadata
- Log all internal MCP tool calls (retrieve_tools, call_tool_*, code_execution,
  upstream_servers, quarantine_security, list_registries, search_servers,
  read_cache)
- Log configuration changes with action, affected entity, and changed values

Web UI enhancements:
- Multi-select dropdown for type filtering with checkboxes
- Intent column with operation type badges and tooltips
- Sortable columns (timestamp, type, server, status, duration)
- Activity Log enabled in sidebar navigation

CLI enhancements:
- Support comma-separated --type values for multi-type filtering
- Updated help text with new event types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Dumbris Dumbris force-pushed the 024-expand-activity-log branch from b3dd605 to 013da07 Compare January 13, 2026 05:24
Dumbris and others added 5 commits January 13, 2026 08:55
…Spec 024)

- Log connection errors (connecting, disconnected, no client) to activity
- Add sessions filter dropdown with client name + session ID suffix
- Add arguments parameter to tool call activity events
- Add arguments/response to internal tool call events
- Add SSE listeners for internal_tool_call, system_start/stop, config_change
- Log enable/disable server events as config changes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…ec 024)

- Fix SSE event listeners for system lifecycle events
  - Changed activity.system_start to activity.system.start (matches backend)
  - Changed activity.system_stop to activity.system.stop (matches backend)
- Expand Activity.vue handlers to detect all event type fields
  - internal_tool_call: internal_tool_name, target_server, target_tool
  - config_change: action, affected_entity
  - system_start/stop: version, listen_address, reason
- Fix CLI activity watch to show all event types (not just .completed)
  - Added dedicated formatters for each event type
  - Shows config_change, system_start, system_stop, policy_decision
  - Improved filtering for server name across different event types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
… log (Spec 024)

Successful call_tool_* internal tool calls now excluded by default from
activity listings (Web UI, CLI, API) to avoid duplicates alongside their
corresponding upstream tool_call entries. Failed call_tool_* calls are
still shown since they have no corresponding tool_call entry.

## Changes
- Add ExcludeCallToolSuccess filter to storage layer (default: true)
- Add include_call_tool query parameter to REST API
- Filter successful call_tool_* in CLI activity watch command
- Add E2E tests for activity log filtering scenarios
- Update spec 024, docusaurus docs, and swagger.yaml

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove Tool Calls History page (ToolCalls.vue) entirely
- Update Dashboard and Sessions "View Calls" links to Activity Log
- Activity Log now accepts ?session= query param for filtering
- Update sidebar navigation to show Activity Log instead of Tool Call History
- Fix internal tool call logging to include arguments and response JSON
  (retrieve_tools, read_cache, upstream_servers, quarantine_security,
  search_servers, list_registries now log full request/response data)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Dumbris Dumbris merged commit 29fcf5f into main Jan 14, 2026
41 checks passed
@Dumbris Dumbris deleted the 024-expand-activity-log branch January 14, 2026 13:30
technicalpickles pushed a commit to technicalpickles/mcpproxy-go that referenced this pull request Jan 21, 2026
…mart-mcp-proxy#254)

* feat(activity): expand activity log with new event types (Spec 024)

Add comprehensive activity logging for system lifecycle, internal tool
calls, and configuration changes:

- Add 4 new activity types: system_start, system_stop, internal_tool_call,
  config_change
- Implement multi-type filtering with OR logic (comma-separated types)
- Log system startup/shutdown events with version and duration metadata
- Log all internal MCP tool calls (retrieve_tools, call_tool_*, code_execution,
  upstream_servers, quarantine_security, list_registries, search_servers,
  read_cache)
- Log configuration changes with action, affected entity, and changed values

Web UI enhancements:
- Multi-select dropdown for type filtering with checkboxes
- Intent column with operation type badges and tooltips
- Sortable columns (timestamp, type, server, status, duration)
- Activity Log enabled in sidebar navigation

CLI enhancements:
- Support comma-separated --type values for multi-type filtering
- Updated help text with new event types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(activity): log early tool call failures and add sessions filter (Spec 024)

- Log connection errors (connecting, disconnected, no client) to activity
- Add sessions filter dropdown with client name + session ID suffix
- Add arguments parameter to tool call activity events
- Add arguments/response to internal tool call events
- Add SSE listeners for internal_tool_call, system_start/stop, config_change
- Log enable/disable server events as config changes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(activity): fix auto-refresh and CLI watch for new event types (Spec 024)

- Fix SSE event listeners for system lifecycle events
  - Changed activity.system_start to activity.system.start (matches backend)
  - Changed activity.system_stop to activity.system.stop (matches backend)
- Expand Activity.vue handlers to detect all event type fields
  - internal_tool_call: internal_tool_name, target_server, target_tool
  - config_change: action, affected_entity
  - system_start/stop: version, listen_address, reason
- Fix CLI activity watch to show all event types (not just .completed)
  - Added dedicated formatters for each event type
  - Shows config_change, system_start, system_stop, policy_decision
  - Improved filtering for server name across different event types

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix(activity): filter out duplicate call_tool_* entries from activity log (Spec 024)

Successful call_tool_* internal tool calls now excluded by default from
activity listings (Web UI, CLI, API) to avoid duplicates alongside their
corresponding upstream tool_call entries. Failed call_tool_* calls are
still shown since they have no corresponding tool_call entry.

## Changes
- Add ExcludeCallToolSuccess filter to storage layer (default: true)
- Add include_call_tool query parameter to REST API
- Filter successful call_tool_* in CLI activity watch command
- Add E2E tests for activity log filtering scenarios
- Update spec 024, docusaurus docs, and swagger.yaml

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(activity): replace Tool Calls History with Activity Log (Spec 024)

- Remove Tool Calls History page (ToolCalls.vue) entirely
- Update Dashboard and Sessions "View Calls" links to Activity Log
- Activity Log now accepts ?session= query param for filtering
- Update sidebar navigation to show Activity Log instead of Tool Call History
- Fix internal tool call logging to include arguments and response JSON
  (retrieve_tools, read_cache, upstream_servers, quarantine_security,
  search_servers, list_registries now log full request/response data)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore: regenerate OpenAPI spec

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants