{"name": "QGIS Agent", "package_name": "qgis_agent", "description": "LLM-powered intelligent assistant for QGIS. Natural language control of QGIS tools, plus an optional local MCP server so external AI agents (Claude Desktop, Cursor, etc.) can drive QGIS.", "about": "QGIS Agent is an AI-powered assistant that runs inside QGIS desktop. It allows you to control QGIS through natural language conversations, including: viewing project info, adding/removing layers, executing Processing algorithms, running PyQGIS code, setting layer labels, rendering maps, and more.\n\nFeatures:\n- Natural language interface for QGIS operations\n- 23 built-in QGIS tools driven by natural language (PyQGIS / Processing)\n- Bundled reference catalog: 679 Processing algorithm/tool entries, one TOML per algorithm (tool_docs/)\n- RAG-enhanced API documentation retrieval\n- Cookbook self-evolution mechanism\n- Long-term memory support\n- Multiple LLM providers (DeepSeek, Mimo, GLM, Gemini, etc.)\n- Safety: PyQGIS AST static scan, confirmation for dangerous ops, untrusted data sanitization\n- Skills system: load/run user or bundled skill recipes (run_skill tool)\n- Workflow recording & replay: record a QGIS operation sequence and replay it later\n- Proactive clarification: agent asks when intent is ambiguous before acting\n- Task graph: decompose complex goals into a trackable plan\n- Optional MCP server: expose the same tools to external AI agents over the Model Context Protocol\n\nMCP server security model (disabled by default; you start it explicitly from the settings page):\n- listens on 127.0.0.1 only; binding to any other address is not supported\n- requires an access token; requests without a valid token are rejected\n- privileged tools (execute_pyqgis, execute_processing, remove_layer, load_project,\nsave_project, run_skill) are hidden from external agents unless you enable them,\nand each execution still requires an on-screen confirmation\n- port and token are recorded in ~/.qgis_agent/mcp_session.json (mode 0600) so the\nbundled stdio MCP server can discover them; the file is deleted when the service stops\n\nExternal dependencies (install via pip before use):\nlangchain_core, langchain_openai, langchain_deepseek, httpx\nOptional (only for the \"browser-compatible TLS\" option in settings; not required by default):\ncurl_cffi  # sends API requests with a browser TLS stack, for gateways that interrupt non-browser clients\nThe bundled MCP server (mcp_server/) requires no third-party packages.", "homepage": "https://github.com/bunkmr/qgis-agent", "repository": "https://github.com/bunkmr/qgis-agent", "tracker": "https://github.com/bunkmr/qgis-agent/issues", "author": "bunkmr", "tags": ["ai", "agent", "assistant", "deepseek", "automation", "qgis", "llm", "openai", "\u4eba\u5de5\u667a\u80fd", "\u81ea\u7136\u8bed\u8a00\u5904\u7406", "\u4e2d\u6587", "\u7a7a\u95f4\u5206\u6790", "gis"], "downloads": 1877, "latest_version": "2.4.13", "versions": [{"version": "2.4.13", "experimental": false, "qgis_min": "3.22.0", "qgis_max": "4.99.0", "downloads": 91, "uploaded_by": "bunkmr", "upload_datetime": "2026-09-29T08:41:42.359021"}, {"version": "2.4.11", "experimental": false, "qgis_min": "3.22.0", "qgis_max": "4.99.0", "downloads": 318, "uploaded_by": "bunkmr", "upload_datetime": "2026-09-24T23:13:51.448899"}, {"version": "2.1.3", "experimental": false, "qgis_min": "3.0.0", "qgis_max": "4.99.0", "downloads": 554, "uploaded_by": "bunkmr", "upload_datetime": "2026-09-02T19:44:17.313770"}, {"version": "2.1.2", "experimental": false, "qgis_min": "3.0.0", "qgis_max": "3.99.0", "downloads": 712, "uploaded_by": "bunkmr", "upload_datetime": "2026-06-19T10:23:56.104557"}, {"version": "2.1.1", "experimental": false, "qgis_min": "3.0.0", "qgis_max": "3.99.0", "downloads": 199, "uploaded_by": "bunkmr", "upload_datetime": "2026-06-15T01:51:44.045892"}]}