Description
AnkiMCP is an Anki addon that implements an MCP server, enabling AI assistants to interact with the Anki flashcard application. Prior to version 0.21.0, `anki_mcp_server/mcp_server.py` globally disables FastMCP DNS-rebinding protection through `TransportSecuritySettings` with `enable_dns_rebinding_protection=False`, including for the default local Streamable HTTP listener. The defaults in `anki_mcp_server/config.py` enable `http_enabled` on `127.0.0.1:3141`, with an empty `http_path` selecting the root endpoint. No bearer token, API key, session secret, strict `Host` allowlist or strict `Origin` allowlist is enforced before `initialize`, `tools/list` and `tools/call` reach MCP dispatch. A victim who visits a malicious web page while Anki and the listener are running can have browser requests rebound to loopback, allowing the attacker to `initialize` MCP, enumerate tools, read the local collection, and perform enabled non-destructive note/deck creation or updates. The attacker needs neither LAN position nor a local process. Available operations depend on enabled tool filters; destructive tools are hidden unless `enabled_destructive_tools` is opted into, limiting deletion-level impact but not the exposed read/write operations. The reported harness confirms real MCP tool dispatch with substituted Anki bridge responses rather than demonstrating destructive changes to a real collection. Disabling protection for tunnels/proxies also disables it for the normal loopback configuration. This issue is fixed in version 0.21.0.
Published: 2026-10-28
Score: 8.8 High
EPSS: n/a
KEV: No
Impact: Unauthorized Access to Local Data and Limited Modification
Action: Immediate Patch
AI Analysis

Impact

AnkiMCP inadvertently disables DNS‑rebinding protection for its default HTTP listener, allowing a browser to redirect requests back to the local machine. This flaw enables an attacker to call the MCP initialize, enumerate tools, and read the local Anki collection without authentication. The attacker can also create or update notes and decks if those tools are enabled, though destructive operations remain hidden unless explicitly opted into. The vulnerability does not require a LAN position or a running local process; it is exploitable merely by visiting a malicious webpage while the victim’s Anki and MCP server are active.

Affected Systems

The affected product is the AnkiMCP add‑on for Anki, specifically the anki-mcp-server-addon version earlier than 0.21.0. The software runs a Streamable HTTP listener on 127.0.0.1:3141 with default settings that expose the tools over the root endpoint.

Risk and Exploitability

With a CVSS score of 8.8 the issue is classified as high severity. The EPSS score is currently unavailable, but the CVE is not listed in the CISA Known Exploited Vulnerabilities catalog. An attacker can achieve the vulnerability by embedding malicious content in a webpage and simply visiting it while the victim is running Anki. No additional privileges or network access are needed; the exploit relies solely on DNS rebinding to the loopback interface. Once accessed, an attacker gains read access to the user's collection and the ability to add or modify entries, which can be significant for privacy and integrity.

Generated by OpenCVE AI on October 28, 2026 at 22:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the anki-mcp-server-addon to version 0.21.0 or later, where DNS‑rebinding protection is restored
  • If upgrading immediately is not possible, disable the HTTP listener or change its IP address so it no longer binds to 127.0.0.1:3141
  • Apply a bearer token or enable strict host or origin allowlists in the configuration to prevent unauthenticated access to the MCP tools

Generated by OpenCVE AI on October 28, 2026 at 22:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 21:45:00 +0000

Type Values Removed Values Added
Description AnkiMCP is an Anki addon that implements an MCP server, enabling AI assistants to interact with the Anki flashcard application. Prior to version 0.21.0, `anki_mcp_server/mcp_server.py` globally disables FastMCP DNS-rebinding protection through `TransportSecuritySettings` with `enable_dns_rebinding_protection=False`, including for the default local Streamable HTTP listener. The defaults in `anki_mcp_server/config.py` enable `http_enabled` on `127.0.0.1:3141`, with an empty `http_path` selecting the root endpoint. No bearer token, API key, session secret, strict `Host` allowlist or strict `Origin` allowlist is enforced before `initialize`, `tools/list` and `tools/call` reach MCP dispatch. A victim who visits a malicious web page while Anki and the listener are running can have browser requests rebound to loopback, allowing the attacker to `initialize` MCP, enumerate tools, read the local collection, and perform enabled non-destructive note/deck creation or updates. The attacker needs neither LAN position nor a local process. Available operations depend on enabled tool filters; destructive tools are hidden unless `enabled_destructive_tools` is opted into, limiting deletion-level impact but not the exposed read/write operations. The reported harness confirms real MCP tool dispatch with substituted Anki bridge responses rather than demonstrating destructive changes to a real collection. Disabling protection for tunnels/proxies also disables it for the normal loopback configuration. This issue is fixed in version 0.21.0.
Title AnkiMCP: DNS rebinding reaches unauthenticated local AnkiMCP HTTP tools
Weaknesses CWE-346
CWE-350
References
Metrics cvssV4_0

{'score': 8.8, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:H/SI:H/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-10-28T21:40:16.081Z

Reserved: 2026-07-10T16:27:03.094Z

Link: CVE-2026-61546

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-28T22:17:15.590

Modified: 2026-10-28T22:17:15.590

Link: CVE-2026-61546

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-28T22:30:12Z

Weaknesses
  • CWE-346

    Origin Validation Error

  • CWE-350

    Reliance on Reverse DNS Resolution for a Security-Critical Action