← Files AlgoAppARCHIVED FILE

.codex-plugin/plugin.json

7.47 KB · Nov 14, 2026 · 01:34 UTC

↓ Download file

{
  "author": {
    "name": "AlgoApp Inc."
  },
  "description": "AlgoApp helps you create and edit flashcards in ChatGPT, review drafts before saving, attach original audio, organize decks in folders, and manage study groups and deck sharing.",
  "interface": {
    "capabilities": [],
    "category": "Education & Research",
    "defaultPrompt": [
      "make flashcards for Tokyo train station names using kanji"
    ],
    "developerName": "AlgoApp Inc.",
    "displayName": "AlgoApp",
    "logo": "./assets/logo.png",
    "screenshots": [],
    "longDescription": "Create and edit AlgoApp flashcards directly in ChatGPT. Review draft cards in an editable preview and save the cards you choose. Attach original audio, organize decks in folders, archive or remove decks, manage study groups and sharing, view account details, read app release notes, and contact support. Audio uses link-based playback over HTTPS with long SHA-256 file identifiers. Anyone with an audio link can play the recording without a separate sign-in.",
    "privacyPolicyURL": "https://mcp.algoapp.ai/privacy",
    "shortDescription": "Create study flashcards",
    "supportURL": "https://www.algoapp.ai/support/",
    "termsOfServiceURL": "https://www.algoapp.ai/terms.html",
    "websiteURL": "https://algoapp.ai",
    "composerIcon": "./assets/logo.png"
  },
  "name": "app-69aef1fcf9b48191ac32f85e0f3af2fc",
  "version": "1.0.6",
  "mcpServers": "./.mcp.json",
  "extensions": {
    "com.openai": {
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Create a new private deck with ten drafts. In the widget, edit the first English value, deselect the tenth row, and save the nine selected cards. Use a distinct deck name when repeating.",
              "prompt": "Create an AlgoApp deck named Reviewer Spanish Greetings with ten Spanish greetings and English meanings. Let me review the cards before saving them.",
              "tools_triggered": "create_deck, save_cards, list_cards",
              "expected_behavior": "Creates an empty private deck and shows ten editable unsaved rows. Waits for approval. The widget saves exactly nine selected rows including the edit, and reports success only after read-back verification. Ask to show saved cards and verify nine persisted rows; do not save a second time."
            },
            {
              "description": "In the deck from case 1, update an existing card without replacing its ID or other values. Then attach the synthetic sample recording and verify link-based audio playback.",
              "prompt": "Show the saved cards in Reviewer Spanish Greetings and change the first English meaning to hello there, preserving its Spanish value. Add an Audio field if needed, then attach the sample recording to that same card using AlgoApp's link-based audio playback.",
              "tools_triggered": "list_decks, list_cards, update_deck, upload_audio, update_cards",
              "expected_behavior": "Uses stable knol_id and a values patch; preserves the Spanish field, other cards, and review history. Adds the Audio field using the full existing deck config if needed. Uploads the original sample bytes with their actual MIME type, copies field_value into the Audio field, and confirms the persisted update. Accurately describes HTTPS delivery and link-based playback without claiming playback requires account sign-in. If the client cannot read the attachment bytes, explains that limitation and does not invent an upload or report success.",
              "file_attachment_urls": [
                "https://blobs.algoapp.ai/c726d333dd159a31423f3480dbb1c5c4a9dfcd30efe1f7e12ade390dc92e8908"
              ]
            },
            {
              "description": "Create a personal nested folder and move the sample deck into it, then archive that sample deck. Do not permanently remove any deck.",
              "prompt": "Create the folder Reviewer Practice::Spanish and move Reviewer Spanish Greetings into it without changing its cards. Then archive that deck so I can restore it later; do not permanently remove it.",
              "tools_triggered": "list_decks, list_folders, create_folder, move_decks_to_folder, delete_decks",
              "expected_behavior": "Uses exact existing deck IDs, creates and reads back the folder, verifies the move, then invokes delete_decks with mode=archive. Retains cards and review history and explains restoration through AlgoApp Archive. Does not use mode=permanent or touch unrelated decks."
            },
            {
              "description": "Read account, subscription, and current release information without changing account or billing state.",
              "prompt": "What email is my AlgoApp account using, do I have an active subscription, and what changed in recent releases?",
              "tools_triggered": "get_account_info, get_subscription_status, get_recent_releases",
              "expected_behavior": "Returns the sample account email, actual subscription status including no subscription, and release notes from AlgoApp. Does not cancel a subscription, create a ticket, show purchase offers, or change the account."
            },
            {
              "description": "Create and inspect a study group without invitations or deck sharing.",
              "prompt": "Create an AlgoApp study group called Reviewer Study Group with no invitations, then show its details.",
              "tools_triggered": "create_study_group, get_study_group",
              "expected_behavior": "Creates one group and reads its details using the returned ID. Empty invites and decks are arrays. Sends no invitations, shares no decks, and changes no existing group."
            }
          ],
          "negative": [
            {
              "description": "General study advice does not request an AlgoApp operation.",
              "prompt": "Give me tips for memorizing vocabulary faster. Do not create any flashcards.",
              "tools_triggered": "None",
              "expected_behavior": "Responds with general advice; invokes no AlgoApp tools and creates no deck or cards."
            },
            {
              "description": "A possible future removal does not authorize revoking access.",
              "prompt": "Show who is in my Reviewer Study Group. I might remove someone later, but do not change anything now.",
              "tools_triggered": "list_study_groups, get_study_group",
              "expected_behavior": "Only reads the requested group, asking for clarification if ambiguous. Does not invoke removal, sharing, invitation, or update tools."
            },
            {
              "description": "Inspecting existing cards and folder structure does not authorize uploads, edits, reorganization, deletion, or support messages.",
              "prompt": "Show my saved cards and folders for Reviewer Spanish Greetings. I might reorganize it and replace the audio later, but do not upload, save, edit, move, archive, delete, or contact support now.",
              "tools_triggered": "list_decks, list_cards, list_folders",
              "expected_behavior": "Uses only the requested read tools, including include_archived=true if needed after case 3. Does not call upload_audio, update_cards, update_deck, save_cards, create_folder, move_decks_to_folder, delete_decks, or create_support_ticket. Asks for clarification if the deck is ambiguous."
            }
          ]
        },
        "commerce": false
      },
      "publication": {
        "release_notes": "First release."
      }
    }
  },
  "apps": "./.app.json"
}

SHA-256: 5011284fc3004bf3649dbd07327ab335138f7a4cf69d598ec214a17278ffd37e