https://github.com/ankimcp/anki-mcp-server
anki-mcp-server
Caution
Score 80 / 100 · 80 files read · 0 critical, 0 high, 2 medium, 11 low findings
Report 9694ff618a6aa51d · first scanned 2026-10-28 · scanned 1× · keyed to the exact package contents, so this link always shows this version
Subscores
100 is clean. Deductions come only from the cited findings below.
Findings
mediumCode contacts static.modelcontextprotocol.io, which the documentation never mentions
(package) · line 1 · rule M3
static.modelcontextprotocol.io
mediumRuns a command automatically at install time (prepare)
package.json · line 1 · rule M4
prepare: husky
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/__tests__/main-http.spec.ts · line 113 · rule L1
const originalEnv = process.env; beforeEach(() => { process.env = { ...originalEnv }; }); afterEach(() => {
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/app.module.spec.ts · line 220 · rule L1
const originalEnv = process.env; beforeEach(() => { process.env = { ...originalEnv }; }); afterEach(() => {
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/config/__tests__/config.factory.spec.ts · line 8 · rule L1
const originalEnv = process.env; beforeEach(() => { // Create a clean copy of process.env before each test process.env
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/config/config.factory.ts · line 22 · rule L1
CLI overrides with process.env * * CLI arguments override environment variables in memory. * Does NOT mutate process.env - ret
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/config/config.schema.ts · line 128 · rule L1
This function maps process.env to the shape expected by configSchema * * Note: Returns any instead of AppConfig because Zod wil
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/http/guards/__tests__/dns-rebinding.integration.spec.ts · line 137 · rule L1
nput() (which reads process.env) * and restored in afterEach so it cannot leak into other suites. */ describe("DNS-rebinding pro
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/http/guards/__tests__/origin-validation.guard.spec.ts · line 18 · rule L1
rd from the current process.env, exercising the same Zod config * path the app uses (ALLOWED_ORIGINS -> validated config.allowedO
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/main-http.ts · line 38 · rule L1
+ CLI overrides (no process.env mutation) const configInput = buildConfigInput({ port: options.port, host: options.host,
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/main-stdio.ts · line 49 · rule L1
+ CLI overrides (no process.env mutation) const configInput = buildConfigInput({ ankiConnect: cliOptions.ankiConnect, re
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/mcp/primitives/essential/resources/__tests__/system-info.resource.spec.ts · line 86 · rule L1
const originalEnv = process.env.NODE_ENV; delete process.env.NODE_ENV; const result = resource.getSystemInfo({ uri: "
lowReads named environment variables (normal for API keys; listed in the permission summary)
src/mcp/primitives/essential/resources/system-info.resource.ts · line 26 · rule L1
{ NODE_ENV: process.env.NODE_ENV || "development", }, }; return { contents: [ { uri
Permission surface
- Network endpoints
- abc.ngrok.ioabc123.ngrok.ioanki.clianki.envanki.example.comanki.testankimcp.aiankiweb.netapi.example.comapp-example.comapp.example.comapps.ankiweb.netbadge.fury.ioclaude.aicustom.ankidashboard.ngrok.comdocs.nestjs.comevil.comexample.comgit.sr.htgithub.comjson-schema.orgmalicious.commalicious.sitemodelcontextprotocol.iongrok.comnodejs.orgopencode.airegistry.npmjs.orgsemver.orgstatic.modelcontextprotocol.iotest.comtunnel.ankimcp.aiwww.anthropic.comwww.cursor.comwww.npmjs.comwww.supermemo.comxyz789.ngrok.iozed.dev
- Environment read
- ALLOWED_ORIGINSANKI_CONNECT_API_KEYANKI_CONNECT_API_VERSIONANKI_CONNECT_TIMEOUTANKI_CONNECT_URLHOSTLOG_LEVELMCP_SERVER_NAMEMCP_SERVER_VERSIONNODE_ENVPORTTUNNEL_AUTH_CLIENT_IDTUNNEL_SERVER_URLTZ
- Shell execution
- yes — code or scripts can run shell commands
- Install hooks
- prepare: husky
- Credential material
- Reads named environment variables (normal for API keys; listed in the permission summary)
Provenance
- Source
- GitHub
- Repository
- ankimcp/anki-mcp-server
- Owner
- ankimcp
- Stars
- 537
- Forks
- 39
- Repo created
- 2025-09-29
- Last push
- 2026-10-22
- License
- MIT
Badge for the author
The badge links back to this report and updates if the package is re-scanned at a new version.
Watch this package
Interest list only. We store the address and this report link, nothing else. No mail is sent in v1.
Share this report: https://preflight.orbitaldeskllc.com/r/9694ff618a6aa51d