forked from nailuoGG/anki-mcp-server
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
91 lines (91 loc) · 3.4 KB
/
package.json
File metadata and controls
91 lines (91 loc) · 3.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
{
"name": "anki-mcp-server",
"version": "0.1.8",
"mcpName": "io.github.nailuoGG/anki-mcp-server",
"description": "A Model Context Protocol (MCP) server that enables LLMs to interact with Anki flashcard software through AnkiConnect",
"type": "module",
"bin": {
"anki-mcp-server": "dist/index.js"
},
"files": [
"dist"
],
"scripts": {
"prepare": "husky",
"prebuild": "node -p \"'export const MCP_VERSION = ' + JSON.stringify(require('./package.json').version) + ';'\" > src/_version.ts",
"build": "tsup",
"watch": "tsup --watch",
"mcpb": "npm run build && mcpb pack",
"validate-mcp": "curl -o server.schema.json https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json && node -e \"const Ajv = require('ajv'); const fs = require('fs'); const ajv = new Ajv({allErrors: true, verbose: true}); const schema = JSON.parse(fs.readFileSync('server.schema.json', 'utf8')); const data = JSON.parse(fs.readFileSync('server.json', 'utf8')); const validate = ajv.compile(schema); const valid = validate(data); if (!valid) { console.log('Validation errors:', validate.errors); process.exit(1); } else { console.log('✅ server.json is valid!'); }\" && rm server.schema.json",
"format": "biome format . --write",
"lint": "biome lint src/",
"check": "biome check --apply .",
"inspector": "npx @modelcontextprotocol/inspector dist/index.js",
"test": "jest --runInBand --detectOpenHandles",
"test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch",
"test:coverage": "NODE_OPTIONS=--experimental-vm-modules jest --coverage",
"test:language": "node test-language.js"
},
"lint-staged": {
"src/**/*.{js,jsx,ts,tsx}": [
"biome format --write",
"git add"
],
"src/**/*.test.ts": [
"biome format --write",
"git add"
]
},
"dependencies": {
"@modelcontextprotocol/sdk": "1.25.1",
"axios": "1.13.2",
"yanki-connect": "3.2.2"
},
"devDependencies": {
"@anthropic-ai/mcpb": "2.1.2",
"@biomejs/biome": "2.3.10",
"@jest/globals": "30.2.0",
"@types/jest": "30.0.0",
"@types/node": "25.0.3",
"axios-mock-adapter": "2.1.0",
"husky": "^9.1.7",
"jest": "30.2.0",
"lint-staged": "^16.2.7",
"ts-jest": "29.4.6",
"ts-node": "^10.9.2",
"tsup": "8.5.1",
"typescript": "5.9.3"
},
"main": "dist/index.js",
"exports": {
".": {
"import": "./dist/index.js",
"types": "./dist/index.d.ts"
}
},
"keywords": [
"anki",
"mcp",
"llm",
"flashcards",
"ankiconnect",
"model-context-protocol"
],
"author": "nailuoGG",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/nailuoGG/anki-mcp-server.git"
},
"bugs": {
"url": "https://github.com/nailuoGG/anki-mcp-server/issues"
},
"homepage": "https://github.com/nailuoGG/anki-mcp-server#readme",
"engines": {
"node": ">=18.0.0"
},
"publishConfig": {
"access": "public"
},
"packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501"
}