← Files ReadingTrackARCHIVED FILE
plugin.json
6.47 KB · Nov 4, 2026 · 00:14 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "readingtrack",
"version": "1.0.0",
"description": "Save articles, explanations, notes, and reading lists to ReadingTrack. Read them later, track your progress, and remember what you learn.",
"author": {
"name": "Boolescale Engineering Private Limited",
"url": "https://www.readingtrack.com"
},
"homepage": "https://www.readingtrack.com",
"keywords": [
"reading",
"notes",
"learning"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "ReadingTrack",
"shortDescription": "Save articles, notes and lists",
"longDescription": "Save the Markdown you choose as private articles or snippets. Organize your learning in ReadingTrack lists, return to read, and use your existing notes and recall workflow.",
"developerName": "Boolescale Engineering Private Limited",
"category": "Productivity",
"capabilities": [
"Read",
"Write"
],
"websiteURL": "https://www.readingtrack.com",
"privacyPolicyURL": "https://www.readingtrack.com/privacy-policy",
"termsOfServiceURL": "https://www.readingtrack.com/terms-of-service",
"defaultPrompt": [
"Save this explanation as an article in ReadingTrack.",
"Save this code example as a ReadingTrack snippet.",
"Create a ReadingTrack list from these resources."
],
"brandColor": "#486344",
"logo": "./assets/logo.png",
"composerIcon": "./assets/logo.png",
"supportURL": "https://www.readingtrack.com/support"
},
"publication": {
"release_notes": "Initial release: save supplied Markdown as private articles or snippets; create ordered reading lists, append items, and list reading lists for the connected account using OAuth.",
"countries": []
},
"review": {
"commerce": false,
"demo_recording_url": "https://www.youtube.com/watch?v=t0o3iUh9OIc",
"prompts": [
"Save this explanation as an article in ReadingTrack.",
"Save this code example as a ReadingTrack snippet.",
"Create a ReadingTrack list from these resources."
],
"test_cases": {
"positive": [
{
"description": "Use a dedicated authenticated test account with reading:write scope. No existing article is required.",
"tools_triggered": "save_article",
"expected_behavior": "Call save_article with title Submission Sample and content_markdown A cache stores reusable results. Report the returned item_id and reader URL only on success; the reader must preserve the supplied text.",
"prompt": "Save an article titled Submission Sample containing exactly: A cache stores reusable results."
},
{
"description": "Use the same test account. Tests a title-optional code snippet and preservation of code.",
"tools_triggered": "save_snippet",
"expected_behavior": "Call save_snippet with content_markdown preserving the supplied Python code. Report its returned title and reader URL; do not claim success if isError is true.",
"prompt": "Save this Python code as a snippet, choosing a title for me:\n```python\nprint('hello')\n```"
},
{
"description": "Use a dedicated test account with all three declared scopes. Tests a private mixed list and item order.",
"tools_triggered": "create_reading_list",
"expected_behavior": "Call create_reading_list with title Submission Resources and ordered items: url https://modelcontextprotocol.io/introduction, then title Reminder with content_markdown Read the specification. Expect success=true and completed_items=2 and report the returned list URL. If partial=true, explain completed_items, failed_index and error without claiming completion.",
"prompt": "Create a private list titled Submission Resources, with https://modelcontextprotocol.io/introduction first and a note titled Reminder containing Read the specification second."
},
{
"description": "Run after the mixed-list case in the same account. Exactly one list named Submission Resources must exist; otherwise clarify which list before appending.",
"tools_triggered": "get_reading_lists, add_to_reading_list",
"expected_behavior": "Use get_reading_lists and follow next_cursor if necessary, then pass the matching returned ID as list_id to add_to_reading_list with one item containing title Next step and content_markdown Try an authenticated client. Expect success=true and completed_items=1; report partial errors accurately.",
"prompt": "Add a note titled Next step containing Try an authenticated client to my Submission Resources list."
},
{
"description": "Use the same test account. Tests read-only discovery; do not create or change lists.",
"tools_triggered": "get_reading_lists",
"expected_behavior": "Call get_reading_lists, passing each returned next_cursor as cursor until exhausted. Display only lists returned for this account, with returned titles and URLs. Explain an empty result without inventing lists.",
"prompt": "Show my reading lists, fetching additional pages if there are any."
}
],
"negative": [
{
"description": "Unsupported deletion request. Explain that this integration cannot delete lists and direct the user to ReadingTrack. Do not invoke any of the five MCP tools or claim deletion.",
"prompt": "Delete all my ReadingTrack lists."
},
{
"description": "Unsupported content retrieval. Explain that this integration lists list metadata but cannot retrieve article bodies for summarization. Ask the user to supply the text. Do not invoke any MCP tools or invent an article summary.",
"prompt": "Read the full text of my most recently saved article and summarize it."
},
{
"description": "Unsupported sharing/publication request. Explain that these tools save private content and cannot publish a list. Do not invoke any MCP tools or claim public sharing.",
"prompt": "Publish my Submission Resources list so anyone can read it."
}
]
}
},
"apps": "./.app.json"
}
}
}
SHA-256: e7211a54c6dceda3863b7a74444f807821ced2e481ea3d4485ca6f117591074c