Commit Graph

  • 27a489a3fd
    Add fields filter to link_create tool YueGuobin 2026-06-15 13:50:04 +08:00
  • 3465c39eaa
    Reduce md5sum cache write failure log level from error to warning YueGuobin 2026-06-15 13:27:14 +08:00
  • 11bf2d8cef
    Add fields filter to node_create tool description for AI YueGuobin 2026-06-15 13:22:32 +08:00
  • f4c8f9bf61
    Optimize MCP create_node: support inherited template_id and default fields filter YueGuobin 2026-06-15 13:21:06 +08:00
  • 6cbe676b18
    Increase MCP HTTP client timeout from 10s to 30s YueGuobin 2026-06-15 13:14:11 +08:00
  • 49d2c271ca
    Enable SQLite WAL mode to fix 'database is locked' errors under concurrent API requests YueGuobin 2026-06-15 13:02:17 +08:00
  • 650be3565f
    Cache IOU image default values per image path to avoid redundant subprocess calls YueGuobin 2026-06-15 12:59:51 +08:00
  • 650f95af54
    Increase node and link creation concurrency from 5 to 20 YueGuobin 2026-06-15 12:50:59 +08:00
  • e29e02a8c6
    Fix: revert IOU lock optimization, serialize IOU node creation for correct application_id assignment YueGuobin 2026-06-15 12:49:01 +08:00
  • 5d0284e7be
    Performance: accelerate project opening with parallel link creation and batch UDP port allocation YueGuobin 2026-06-15 12:42:18 +08:00
  • b605d71a8a
    Merge pull request #2785 from yueguobin/mcp/batch-operations Jeremy Grossmann 2026-06-15 00:47:17 +02:00
  • 97483310b1
    docs: Update link tool descriptions for batch ops and fields filter YueGuobin 2026-06-14 22:51:06 +08:00
  • be69670333
    feat: Add batch link_ids to link_delete/link_reset, fields filter to link_list YueGuobin 2026-06-14 22:43:44 +08:00
  • d6c362b3f0
    feat: Add fields filter to link_list YueGuobin 2026-06-14 22:37:10 +08:00
  • 3b42eea112
    feat: Add batch node_ids to node_delete YueGuobin 2026-06-14 22:28:28 +08:00
  • e17d298bc7
    fix: Convert http to ws scheme in node_console WebSocket URL YueGuobin 2026-06-14 21:57:58 +08:00
  • 80d5ae91a4
    docs: Update link capture batch ops and console short-lived JWT note YueGuobin 2026-06-14 21:47:25 +08:00
  • f14d30cb7e
    feat: Add batch link_ids to link_capture_download YueGuobin 2026-06-14 21:36:24 +08:00
  • 6df9374a4c
    feat: Add batch link_ids to link_capture_start/stop YueGuobin 2026-06-14 21:32:47 +08:00
  • e02f1a8cd0
    fix: Store username in gns3_ctx during auth, use for short-lived download JWTs YueGuobin 2026-06-14 14:00:41 +08:00
  • 678b1868f5
    fix: Generate independent short-lived JWT for pcap download YueGuobin 2026-06-14 13:49:24 +08:00
  • 754eab9609
    docs: Clarify why nodes must be started for device config tools YueGuobin 2026-06-14 13:41:04 +08:00
  • 9f3a6a7e58
    docs: Remove Claude Desktop section from MCP doc YueGuobin 2026-06-14 13:28:04 +08:00
  • f4b8de725c
    docs: Add device config workflow mermaid diagram YueGuobin 2026-06-14 13:20:25 +08:00
  • aabf54b6d1
    docs: Add best practices section for device config — template usage, error checking, config backup YueGuobin 2026-06-14 13:11:15 +08:00
  • 647c5c0e65
    docs: Add snapshot prerequisite and suppress telnetlib3 noise YueGuobin 2026-06-14 12:41:14 +08:00
  • b23f2181c4
    docs: Update MCP doc with batch ops, field filtering, and Jinja2 template YueGuobin 2026-06-14 12:33:00 +08:00
  • c3c78f99a1
    revert: Remove _configs_map changes in tools_v2 (handled by template renderer now) YueGuobin 2026-06-14 12:15:30 +08:00
  • c42b3a59bf
    fix: Merge commands for duplicate device_names in _configs_map YueGuobin 2026-06-14 02:00:06 +08:00
  • fb032ade78
    fix: Actually pass template param to device_config/command handlers YueGuobin 2026-06-14 01:40:48 +08:00
  • fed40c683e
    fix: Correct Jinja2 template commands_field per tool type YueGuobin 2026-06-14 01:33:23 +08:00
  • 8aa7f2bde5
    feat: Jinja2 template support in device_command_run YueGuobin 2026-06-14 00:27:49 +08:00
  • 06e1511773
    feat: Jinja2 template support in device_config_send YueGuobin 2026-06-14 00:27:13 +08:00
  • c647805cfb
    feat: Add batch node_ids support to node_start/stop/reload/suspend YueGuobin 2026-06-14 00:14:34 +08:00
  • 3d3c0eb8db
    feat: Add fields filter to appliance_list YueGuobin 2026-06-13 23:59:12 +08:00
  • cd8bb7cca2
    feat: Add fields filter to node_list YueGuobin 2026-06-13 23:54:24 +08:00
  • b9cc2d8bee
    feat: node_get fields filter — match controller Node schema fields YueGuobin 2026-06-13 23:26:41 +08:00
  • 8f8abe4106
    fix: Set auto_close=False on project_create so projects stay open when clients disconnect YueGuobin 2026-06-13 23:13:31 +08:00
  • 2c1a83114d
    feat: Add batch mode to node_create and link_create (parallel, max 10 workers) YueGuobin 2026-06-13 22:29:27 +08:00
  • 16d3f28cf5
    Merge pull request #2782 from yueguobin/mcp/device-config Jeremy Grossmann 2026-06-11 23:57:08 +02:00
  • a69485befa
    docs: Update MCP service documentation with 82 tools and API Key setup YueGuobin 2026-06-12 00:26:56 +08:00
  • f2e5d69a2c
    fix: Pass API key directly instead of generating short-lived JWT YueGuobin 2026-06-12 00:24:48 +08:00
  • 47fa1bbe95
    Merge branch '3.1' into mcp/device-config Guobin Yue 2026-06-12 00:05:59 +08:00
  • a98707e91d
    chore: Remove redundant migration fixup YueGuobin 2026-06-11 23:51:07 +08:00
  • 8ecc35193d
    feat: API key lifecycle — revoke/restore/delete YueGuobin 2026-06-11 23:32:19 +08:00
  • 062e8dfbc4
    chore: Remove unused revoke_api_key from repository YueGuobin 2026-06-11 23:28:43 +08:00
  • 700d71d675
    fix: Rename revoke_api_key → delete_api_key YueGuobin 2026-06-11 23:28:05 +08:00
  • 9d441517fd
    fix: Hard-delete API keys instead of soft delete (revoked flag) YueGuobin 2026-06-11 23:27:43 +08:00
  • bfef0a36e3
    feat: Support API keys in REST API authentication (reuse gns3_ prefix keys) YueGuobin 2026-06-11 23:21:49 +08:00
  • aed8830052
    fix: Lazily access db engine for API key validation YueGuobin 2026-06-11 23:18:05 +08:00
  • d75746e029
    fix: Add missing updated_at column to api_keys table YueGuobin 2026-06-11 23:13:50 +08:00
  • f8340cb355
    fix: Export ApiKeyCreate from schemas package YueGuobin 2026-06-11 22:56:44 +08:00
  • a79bc7dd20
    feat: Add API Key support for MCP authentication YueGuobin 2026-06-11 22:54:03 +08:00
  • 8e9afbcf92
    fix: Validate JWT token exp claim — was silently ignored after migration to joserfc YueGuobin 2026-06-11 22:32:12 +08:00
  • 0b2c784b81
    docs: Fix appliance_install description - it does NOT download images YueGuobin 2026-06-11 12:13:31 +08:00
  • f0b0de2a91
    docs: Add MCP sharing warnings to shared gns3_copilot modules YueGuobin 2026-06-11 12:11:13 +08:00
  • b69ff17850
    docs: Fix image_install description - it auto-creates templates from uploaded images, not downloads YueGuobin 2026-06-11 12:00:36 +08:00
  • 05f12e1f15
    docs: Clarify image_prune description - only removes unreferenced images YueGuobin 2026-06-11 01:42:27 +08:00
  • 5df385fabe
    Merge pull request #2780 from yueguobin/mcp/node-file-streaming Jeremy Grossmann 2026-06-10 19:41:30 +02:00
  • d0960812aa
    docs: Clarify symbol_delete limitations (built-in vs custom symbols) YueGuobin 2026-06-11 01:35:14 +08:00
  • c2aae9529b
    fix: Add image field to template_create, document type-specific params in description YueGuobin 2026-06-11 01:34:34 +08:00
  • 828a770489
    fix: Remove .json() calls on 204 responses for prune/install images YueGuobin 2026-06-11 01:28:19 +08:00
  • 9d7c482288
    fix: Skip always-running nodes in start_all/stop_all YueGuobin 2026-06-11 01:26:43 +08:00
  • 3db275b199
    docs: Add GNS3 SVG rendering quirks to drawing_create description YueGuobin 2026-06-11 00:48:54 +08:00
  • 4b9572d565
    docs: Add SVG shape examples to drawing_create tool description YueGuobin 2026-06-11 00:39:37 +08:00
  • 4266583922
    fix: Add missing rotation parameter to drawing_update MCP tool YueGuobin 2026-06-11 00:36:37 +08:00
  • 66975f54f7
    fix: Map MCP device_command_run parameter to tool's expected field name YueGuobin 2026-06-11 00:14:00 +08:00
  • 571853599f
    docs: Update link_reset description with accurate UDP connection behavior YueGuobin 2026-06-10 23:59:45 +08:00
  • e7aa228ead
    fix: Update link_reset description to match actual behavior (delete + recreate) YueGuobin 2026-06-10 23:56:30 +08:00
  • 4ec80f8989
    fix: Remove unsupported description param from project_create YueGuobin 2026-06-10 23:32:27 +08:00
  • 80e64ebbae
    fix: Fix symbol_get/upload/delete handlers for correct API paths YueGuobin 2026-06-10 23:01:27 +08:00
  • d431ff6eaa
    feat: Log registered MCP tools at startup YueGuobin 2026-06-10 22:53:51 +08:00
  • 658a8d112b
    docs: Clarify compute tools descriptions about local compute vs database computes YueGuobin 2026-06-10 22:44:54 +08:00
  • 8b014693a8
    fix: Type compute_id as uuid.UUID to reject non-UUID values at MCP input layer YueGuobin 2026-06-10 22:38:38 +08:00
  • 67fa65a9e0
    fix: Require UUID for compute_get/images, remove 'local' string default YueGuobin 2026-06-10 22:31:17 +08:00
  • e7038f1ae3
    feat: Add device configuration MCP tools (config_send, command_run, vpcs_config_set) YueGuobin 2026-06-10 14:34:35 +08:00
  • 87e14cc49e
    refactor: unify MCP tool naming to <module>_<action> convention YueGuobin 2026-06-10 14:07:34 +08:00
  • 41594faf43
    feat: Add symbol upload/delete, project load, and locked check MCP tools YueGuobin 2026-06-10 13:59:39 +08:00
  • b786f0b7eb
    feat: Add image management MCP tools YueGuobin 2026-06-10 13:58:42 +08:00
  • e4d2faec37
    feat: Add symbol and appliance MCP tools YueGuobin 2026-06-10 13:57:52 +08:00
  • db9f645c98
    feat: Add node bulk ops, project lock, and server info MCP tools YueGuobin 2026-06-10 13:56:43 +08:00
  • e7fbb3ec10
    feat: Add snapshot and drawing MCP tools YueGuobin 2026-06-10 13:55:13 +08:00
  • acce79d243
    refactor: unify MCP handlers to use http_call directly, relocate node file ops to Node class YueGuobin 2026-06-10 13:47:10 +08:00
  • 28b06f37c4
    feat: Add node file operations as MCP tools (list, get, write, delete) YueGuobin 2026-06-10 12:16:35 +08:00
  • 066b7076c0
    Add comment about rootful Docker permissions at container start YueGuobin 2026-06-10 00:46:10 +08:00
  • ce95c89b64
    Fix _fix_permissions test: set process.returncode=0 and update assertion YueGuobin 2026-06-10 00:44:12 +08:00
  • eb15c7138b
    Fix list_node_files PermissionError on os.scandir YueGuobin 2026-06-10 00:15:26 +08:00
  • 1a307edbca
    Fix _fix_permissions error handling and list_node_files PermissionError YueGuobin 2026-06-10 00:14:40 +08:00
  • e659b64bf0
    Add async_iterable_to_stream utility to avoid aiohttp compatibility issues YueGuobin 2026-06-09 23:55:59 +08:00
  • 8e340f0ce8
    Add descriptive detail to 403 errors in compute file endpoints YueGuobin 2026-06-09 23:33:35 +08:00
  • 16a9064eb8
    Fix silent file write failure in write_compute_project_file YueGuobin 2026-06-09 23:27:45 +08:00
  • cbb21e8e40
    feat: Node file streaming, recursive listing, file type detection, and file delete YueGuobin 2026-06-09 22:52:50 +08:00
  • c70a4660c1
    Merge pull request #2777 from yueguobin/mcp/project-tools Jeremy Grossmann 2026-06-07 18:11:16 +02:00
  • f91d7b18e9
    Update README tool descriptions: .txt → .md YueGuobin 2026-06-07 23:32:26 +08:00
  • 4ca1a80adb
    Update README tool descriptions to mention Markdown format YueGuobin 2026-06-07 23:23:38 +08:00
  • 4921b98948
    Add MCP project tools: update, duplicate, and README operations YueGuobin 2026-06-07 23:14:07 +08:00
  • 95b1a35300
    Development on 3.1.0.dev4 grossmj 2026-06-07 00:13:59 +02:00
  • aad66e8ede
    Release v3.1.0a3 v3.1.0a3 grossmj 2026-06-06 23:19:24 +02:00
  • 259b7824af
    Bundle web-ui v3.1.0a3 grossmj 2026-06-06 23:11:04 +02:00
  • bd22911066
    Sync appliances grossmj 2026-06-06 22:53:12 +02:00