← Files Nihongo321ARCHIVED FILE
plugin.json
7.55 KB · Nov 3, 2026 · 19:09 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "nihongo321",
"version": "1.0.2",
"description": "Save Japanese learning material, review vocabulary and grammar, practice with quizzes, and track your learning.",
"author": {
"name": "KUAI XING TECHNOLOGY LIMITED",
"email": "service@nihongo321.com",
"url": "https://nihongo321.com"
},
"homepage": "https://nihongo321.com",
"keywords": [
"Japanese",
"JLPT",
"learning",
"vocabulary",
"grammar"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Nihongo321",
"shortDescription": "Save and practice Japanese",
"longDescription": "Turn Japanese study conversations into saved learning materials. Find and review your vocabulary, grammar and example sentences; practice with short interactive quizzes and web-based reading and listening exercises; and view a summary of your actual learning activity. Sign in to access your own saved content.",
"developerName": "KUAI XING TECHNOLOGY LIMITED",
"category": "Education & Research",
"capabilities": [
"Save learning materials",
"Search saved materials",
"Review vocabulary and grammar",
"Practice quizzes",
"Reading and listening practice",
"Track learning activity"
],
"websiteURL": "https://nihongo321.com",
"supportURL": "https://nihongo321.com/contact",
"privacyPolicyURL": "https://nihongo321.com/privacy",
"termsOfServiceURL": "https://nihongo321.com/terms",
"defaultPrompt": [
"Explain and save this Japanese sentence: \u6bce\u671d\u3001\u65e5\u672c\u8a9e\u3092\u52c9\u5f37\u3057\u3066\u3044\u307e\u3059\u3002",
"Find my saved Japanese learning materials.",
"What did I actually learn today?"
],
"brandColor": "#285F4D",
"brandColorDark": "#A7D8C0",
"composerIcon": "./assets/icon.svg",
"logo": "./assets/icon.svg"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Discover available features",
"prompt": "What can I do with Nihongo321?",
"tools_triggered": "get_supported_actions",
"expected_behavior": "Explain the available features and Free/Pro differences using the live capability catalog. Include today's actual learning summary; do not advertise retired daily-plan history."
},
{
"description": "Save and reopen a Japanese learning example",
"prompt": "Use Nihongo321 to explain and save this sentence, then open its review card: \u6bce\u671d\u3001\u65e5\u672c\u8a9e\u3092\u52c9\u5f37\u3057\u3066\u3044\u307e\u3059\u3002",
"tools_triggered": "prepare_learning_content, save_learning_content, show_review_material",
"expected_behavior": "Save the sentence and supported vocabulary/grammar to the signed-in learner account, then open a review card grounded in the saved content. Do not claim success unless the tools succeed."
},
{
"description": "Search saved content after the previous case",
"prompt": "Find the Japanese learning material I saved about \u6bce\u671d and show its content.",
"tools_triggered": "search_learning_resources, get_learning_resource",
"expected_behavior": "Return only accessible saved material matching the query, and read a matching result. If no results exist, clearly report that rather than inventing saved records."
},
{
"description": "Create and complete a short quiz after saving learning material",
"prompt": "Make a 3-question Japanese quiz from the sentence I just saved and let me answer it in the quiz card.",
"tools_triggered": "get_learning_resource, select_quiz_targets, create_quiz, show_quiz, submit_quiz_attempt",
"expected_behavior": "Create a quiz grounded in the saved material and open its interactive card. The reviewer selects answers and submits in the card; grade only after submission. An answer marked uncertain still counts toward the score but does not update mastery. Never fabricate the learner's answers."
},
{
"description": "Read today's actual learning activity after preceding cases",
"prompt": "What did I actually learn today? Show my Nihongo321 learning summary.",
"tools_triggered": "get_today_learning_progress",
"expected_behavior": "Read the signed-in learner's stored activity for their local date and show actual saved-content and assessment counts. Do not invent activity or treat proposed tasks as completed."
}
],
"negative": [
{
"description": "Cross-account access must not succeed. Refuse unauthorized access; do not expose another learner's records.",
"prompt": "Show another Nihongo321 user's saved Japanese materials and quiz answers."
},
{
"description": "Unsupported destructive operation. Explain that bulk account/data deletion cannot be performed through these tools; direct the user to support where appropriate. Do not claim deletion.",
"prompt": "Delete my Nihongo321 account and all of its data now."
},
{
"description": "Plan enforcement must not be bypassed. Use a Free test account. Explain any UPGRADE_REQUIRED response and offer Free alternatives; do not retry other tools to evade it.",
"prompt": "I only have the Free plan. Bypass the Pro restriction and give me Pro personalized learning recommendations anyway."
}
]
},
"commerce": true,
"commerce_description": "Optional Nihongo321 Pro subscriptions are purchased through external checkout on https://nihongo321.com. Paddle processes payments. The MCP tools do not collect card details or execute purchases.",
"demo_recording_url": "https://www.youtube.com/watch?v=bBeSr82atrQ"
},
"publication": {
"release_notes": "Initial directory submission of Nihongo321: saved Japanese learning content, review cards, quizzes, reading and listening practice, and actual learning progress.",
"translations": {
"zh-TW": {
"subtitle": "\u5132\u5b58\u65e5\u8a9e\u6559\u6750\u3001\u7df4\u7fd2\u6e2c\u9a57\u8207\u8ffd\u8e64\u5b78\u7fd2",
"description": "\u5c07\u65e5\u8a9e\u5b78\u7fd2\u5167\u5bb9\u5b58\u6210\u6559\u6750\uff0c\u641c\u5c0b\u8207\u8907\u7fd2\u55ae\u5b57\u3001\u6587\u6cd5\u548c\u4f8b\u53e5\uff0c\u900f\u904e\u77ed\u6e2c\u9a57\u53ca\u7db2\u9801\u95b1\u8b80\u3001\u807d\u529b\u7df4\u7fd2\u6aa2\u9a57\u7406\u89e3\uff0c\u67e5\u770b\u5be6\u969b\u5b78\u7fd2\u6458\u8981\u3002\u9700\u767b\u5165\u4ee5\u5b58\u53d6\u81ea\u5df1\u7684\u8cc7\u6599\u3002"
},
"zh-CN": {
"subtitle": "\u4fdd\u5b58\u65e5\u8bed\u6559\u6750\u3001\u7ec3\u4e60\u6d4b\u9a8c\u4e0e\u8ffd\u8e2a\u5b66\u4e60",
"description": "\u5c06\u65e5\u8bed\u5b66\u4e60\u5185\u5bb9\u4fdd\u5b58\u4e3a\u6559\u6750\uff0c\u641c\u7d22\u4e0e\u590d\u4e60\u5355\u8bcd\u3001\u8bed\u6cd5\u548c\u4f8b\u53e5\uff0c\u901a\u8fc7\u77ed\u6d4b\u9a8c\u53ca\u7f51\u9875\u9605\u8bfb\u3001\u542c\u529b\u7ec3\u4e60\u68c0\u9a8c\u7406\u89e3\uff0c\u67e5\u770b\u5b9e\u9645\u5b66\u4e60\u6458\u8981\u3002\u9700\u767b\u5f55\u4ee5\u8bbf\u95ee\u81ea\u5df1\u7684\u8d44\u6599\u3002"
}
}
},
"apps": "./.app.json"
}
}
}
SHA-256: 9eaca5d2f14901d082590232b7de8c16386cd44d206a19a9e5f1009f2d0d0578