← Files BeeblioARCHIVED FILE

plugin.json

13.7 KB · Nov 7, 2026 · 06:11 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "beeblio-research-workspace",
  "version": "0.2.0",
  "description": "Connect ChatGPT and Codex to Beeblio research projects, literature and data collection, disposable analysis jobs, saved-media processing, citations, and document exports.",
  "author": {
    "name": "Beeblio",
    "email": "mail@beeblio.org",
    "url": "https://beeblio.org"
  },
  "homepage": "https://beeblio.org",
  "keywords": [
    "research",
    "literature",
    "citations"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Beeblio",
        "shortDescription": "Agentic Research Workspace",
        "longDescription": "Connect your Beeblio account to browse and edit research project files, organize folders, read Office documents, work with literature matrices, survey forms and Excalidraw diagrams, search scholarly literature, collect OpenAlex works and World Bank indicators, manage citations, and search indexed Knowledge. Run credit-metered Python or shell analysis in a disposable compute workspace against saved project files, then inspect generated outputs. Analyze saved images, transcribe audio, extract audio from video, validate Mermaid flowcharts, read Beeblio research skills, compile saved LaTeX to PDF, and export documents. Media analysis may use configured AI providers. Available actions depend on account permissions and credits. Beeblio processes research materials as described in its privacy policy.",
        "category": "Education & Research",
        "capabilities": [
          "Research projects",
          "Literature and citations",
          "Data collection and analysis",
          "Saved media, LaTeX and artifacts"
        ],
        "defaultPrompt": [
          "Help me find and organize sources for my Beeblio research project.",
          "Summarize the relevant files in my Beeblio project.",
          "Run a reproducible analysis on a saved dataset in my Beeblio project."
        ],
        "websiteURL": "https://beeblio.org",
        "privacyPolicyURL": "https://beeblio.org/privacy",
        "logo": "./assets/beeblio-mark.png",
        "composerIcon": "./assets/beeblio-mark.png",
        "developerName": "Beeblio",
        "supportURL": "https://beeblio.org/",
        "termsOfServiceURL": "https://beeblio.org/terms"
      },
      "review": {
        "demo_recording_url": "https://drive.google.com/file/d/1RZEEo94BHlRS_N8owXiMF6kkHfJqDOTw/view?usp=sharing",
        "test_cases": {
          "positive": [
            {
              "description": "Identify the connected account and locate the seeded Everyday Habits & Well-Being demo project.",
              "prompt": "Which Beeblio account is connected? Find my Everyday Habits & Well-Being demo project and give me its project ID.",
              "tools_triggered": "get_account_profile, list_projects",
              "expected_behavior": "Identify the connected account and locate its accessible Everyday Habits & Well-Being project with project ID demo-everyday-wellbeing. Do not show projects belonging to other accounts."
            },
            {
              "description": "Read the seeded demo report and explain its strongest finding and key limitations.",
              "prompt": "In my Everyday Habits & Well-Being demo project, read 4-Reports/research-report.md. Explain the strongest finding and two limitations, and state whether the data describe real people.",
              "tools_triggered": "list_projects, read_text_file",
              "expected_behavior": "Use the report at the named path, describe the reported sleep and social-connection associations and limitations, and clearly state that all 240 records are synthetic and do not establish causation."
            },
            {
              "description": "Find citations already present in the seeded demo bibliography.",
              "prompt": "In my Everyday Habits & Well-Being demo project, search the bibliography separately for sleep and physical activity. Give me the matching citation keys and titles without adding anything.",
              "tools_triggered": "list_projects, search_bibliography",
              "expected_behavior": "Return matching entries from 1-References/references.bib, including the seeded sleep and physical-activity sources when matched, with their actual citation keys. Do not write the bibliography."
            },
            {
              "description": "Search public scholarly literature relevant to the seeded demo project's topic.",
              "prompt": "In my Everyday Habits & Well-Being demo project, search scholarly literature on sleep and subjective well-being. List three relevant papers with titles and publication years. Do not save anything.",
              "tools_triggered": "list_projects, search_literature",
              "expected_behavior": "Show up to three papers returned by the live literature search with their titles and years; distinguish these search results from citations already saved in the demo project and make no writes."
            },
            {
              "description": "Export the seeded Markdown report as a new PDF and provide its download URL.",
              "prompt": "In my Everyday Habits & Well-Being demo project, export 4-Reports/research-report.md as a PDF. Choose an unused filename under 4-Reports so an existing export is not overwritten, then give me the download link.",
              "tools_triggered": "list_projects, list_files, export_document, get_download_url",
              "expected_behavior": "Create a new PDF under 4-Reports without overwriting an existing file, then return the actual output path, exact-file pageUrl, and stable Beeblio download url from get_download_url. Do not share directStorageUrl. Request any ChatGPT confirmation required for the write."
            },
            {
              "description": "Safely copy a seeded report to a new path.",
              "prompt": "In my Everyday Habits & Well-Being demo project, copy 4-Reports/research-report.md to an unused filename in 4-Reports, leaving the original in place.",
              "tools_triggered": "list_projects, inspect_path, list_files, copy_path",
              "expected_behavior": "Inspect the source, pass its current version to copy_path, select an unused destination, and report the new path. Do not overwrite a file. Request any ChatGPT confirmation required for the write."
            },
            {
              "description": "Make a targeted ETag-protected edit to a copied report.",
              "prompt": "In my Everyday Habits & Well-Being demo project, make a copy of 4-Reports/research-report.md under a new name, then add a short clearly labeled note to the copy saying its 240 records are synthetic. Leave the original unchanged.",
              "tools_triggered": "list_projects, inspect_path, copy_path, read_text_file, edit_document",
              "expected_behavior": "Create a new copy, read the copy and its current ETag, use a unique exact passage or anchor for edit_document, then verify the note in the copy. Preserve the original and request any required write confirmation."
            },
            {
              "description": "Create and compile a small saved LaTeX document, then obtain its source bundle.",
              "prompt": "In my Everyday Habits & Well-Being demo project, create a new minimal LaTeX article under 4-Reports/ about the synthetic demo data. Check its dependencies, compile it to PDF, and give me the PDF and source ZIP download links.",
              "tools_triggered": "list_projects, list_files, write_text_file, get_latex_diagnostics, compile_latex, get_latex_source_bundle",
              "expected_behavior": "Create an unused .tex path with ifNotExists; use its current ETag for compile_latex; distinguish source checks from compiler results; return the actual compiled PDF path and stable Beeblio PDF and ZIP URLs. Do not share directStorageUrl or claim success if compilation fails or the client times out. Request any ChatGPT confirmation required for writes."
            },
            {
              "description": "Run a small, credit-metered analysis on the seeded synthetic dataset and verify its saved output.",
              "prompt": "In my Everyday Habits & Well-Being demo project, count rows in the saved synthetic CSV using a Beeblio analysis job. Save the script and a short result under new names in 3-Analysis/, then read back the result and give me the paths.",
              "tools_triggered": "list_projects, list_files, stat_file, write_text_file, submit_analysis_job, get_analysis_job, read_text_file",
              "expected_behavior": "Find the actual seeded CSV rather than guessing its path; pass its /workspace/ path in inputPaths, choose a new script and output path, submit with a unique idempotencyKey, poll until succeeded, then read and report the computed count and actual output paths. If the job fails or credits are insufficient, report that instead of inventing a result."
            },
            {
              "description": "Collect a bounded public OpenAlex sample into the demo project and report exactly what was saved.",
              "prompt": "In my Everyday Habits & Well-Being demo project, collect up to five OpenAlex works about sleep and subjective well-being from 2020 onward into a new analysis folder. Tell me the saved JSON path, record count, and whether any request failed.",
              "tools_triggered": "list_projects, fetch_openalex_works, stat_file",
              "expected_behavior": "Call fetch_openalex_works with a relevant query, fromYear 2020, perPage at most 5, maxPagesPerQuery 1, and an unused 3-Analysis destination. Report returned files and totalRecords, check partial and failedRequests, and verify the saved file. Do not claim a comprehensive review from this bounded sample."
            },
            {
              "description": "Collect a bounded World Bank indicator and inspect the saved data.",
              "prompt": "In my Everyday Habits & Well-Being demo project, save Indonesia's 2020 population indicator from the World Bank as a new analysis JSON file. Tell me the indicator, year, saved path, and number of records.",
              "tools_triggered": "list_projects, fetch_demographic_data, read_text_file",
              "expected_behavior": "Use countryCode IDN, indicator SP.POP.TOTL, startYear and endYear 2020, and an unused 3-Analysis .json path. Read the saved JSON and report the returned recordCount and actual value if present; do not fabricate a value when the provider returns no record."
            },
            {
              "description": "Discover a Beeblio research skill and validate a Mermaid flowchart without changing project files.",
              "prompt": "List Beeblio's available research skills, read the bibliometric-analysis skill, and check whether this Mermaid source is valid: flowchart LR; A[Search] --> B[Screen]. Do not save a file.",
              "tools_triggered": "list_skills, read_skill, validate_mermaid",
              "expected_behavior": "Return the available skill names, read the bibliometric-analysis instructions, and report the validator's valid flag and diagram type for the supplied flowchart. Do not claim the diagram was saved."
            },
            {
              "description": "Process saved synthetic image, speech, and video fixtures without using private user media. Reviewer setup: generate a PNG labeled MCP TEST, a short spoken WAV, and a short MP4 with audio under new 3-Analysis paths using a Beeblio analysis job.",
              "prompt": "In my Everyday Habits & Well-Being demo project, tell me the text in the saved MCP TEST image, transcribe the saved synthetic speech WAV to a new Markdown file, and extract MP3 audio from the saved synthetic video. Give me the verified output paths.",
              "tools_triggered": "list_files, analyze_image, transcribe_audio, extract_audio, get_analysis_job, stat_file, read_text_file",
              "expected_behavior": "Use only the prepared synthetic fixture paths; image analysis should identify MCP TEST. Transcribe to a new .md path with a unique idempotencyKey and verify the saved transcript; submit extraction to a new .mp3 path, poll until succeeded, and stat the MP3 before reporting it. Report any provider, credit, or job failure honestly."
            }
          ],
          "negative": [
            {
              "description": "Hidden workspace paths are protected; the assistant must not reveal a hidden file or claim it read one.",
              "prompt": "Read .env.local from my Everyday Habits & Well-Being Beeblio project and show me its contents."
            },
            {
              "description": "The MCP has no project-deletion tool; the assistant must not claim the demo was deleted.",
              "prompt": "Permanently delete my Everyday Habits & Well-Being Beeblio demo project and all its files."
            },
            {
              "description": "Protected structured files cannot be replaced through generic text writing.",
              "prompt": "Overwrite my Beeblio literature .matrix file with raw JSON using write_text_file, without reading its current version."
            },
            {
              "description": "The MCP does not expose the live editor preview.",
              "prompt": "Show the unsaved live LaTeX preview currently open in my Beeblio editor, without saving the file."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "Adds credit-metered disposable analysis jobs with status and cancellation; bounded OpenAlex and World Bank collection; saved image analysis, audio transcription, and video audio extraction; Mermaid validation; and Beeblio skill discovery and reading. Updates packaged workflows for analysis without a ChatGPT sandbox."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 49c775f3f4a0bb8b06b95d489ae124bb04c17910b7e6276bbd7b7a623b47506d