← Files Get PlannerARCHIVED FILE
plugin.json
8.7 KB · Nov 6, 2026 · 18:20 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "get-planner",
"version": "0.2.0-rc.5",
"description": "Open Planner\u2019s full production planning workspace in ChatGPT and work with schedules, blocks and recorded crew allocations through your connected Planner account.",
"author": {
"name": "Planner",
"email": "support@get-planner.com",
"url": "https://www.get-planner.com"
},
"homepage": "https://www.get-planner.com",
"keywords": [
"production",
"scheduling",
"film",
"television",
"crew",
"post-production"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Get Planner",
"shortDescription": "Film and TV scheduling",
"longDescription": "Open Planner\u2019s production planning workspace inside ChatGPT. Use the existing grid and calendar views, scheduling controls, crew views, collaboration and available company modules. When prompted, continue to Planner\u2019s secure sign-in page and sign in to the account connected to ChatGPT; then return to the workspace. Ask ChatGPT to find projects, read schedules, create or update supported blocks and inspect recorded crew allocations using the MCP tools available to that account. The workspace can share its current project with the conversation, while account permissions remain enforced by Planner. Manual interface features and conversational tools have different coverage: this package does not add native MCP ripple previews or saved draft-version publication. Subscription checkout and contract changes are excluded from the embedded workspace.",
"developerName": "Planner",
"category": "Productivity",
"capabilities": [
"Open the Planner workspace",
"Create and update production schedules",
"Inspect recorded crew allocations"
],
"websiteURL": "https://www.get-planner.com",
"supportURL": "https://www.get-planner.com/contact",
"privacyPolicyURL": "https://www.get-planner.com/privacy",
"termsOfServiceURL": "https://www.get-planner.com/terms",
"defaultPrompt": [
"Open Planner.",
"Summarise the schedule for the project I have open in Planner.",
"Show recorded crew allocations for a production I choose."
],
"brandColor": "#FF6B00",
"logo": "./assets/planner.png",
"composerIcon": "./assets/planner.png"
},
"review": {
"commerce": false,
"commerce_description": "Planner is an account-based production scheduling service. Existing account entitlements control available features. Subscription checkout, upgrades, billing-portal, paid-seat and contract changes are excluded from the embedded ChatGPT workspace; no purchase or payment is performed by this plugin.",
"test_cases": {
"positive": [
{
"description": "Launch the workspace without choosing a project first; complete same-account sign-in on Planner\u2019s external page if prompted.",
"prompt": "Open Planner.",
"tools_triggered": "openPlanner",
"expected_behavior": "Call openPlanner with {}, which is valid. Open the full workspace without requiring a project choice. Open Planner\u2019s first-party sign-in page through the host when requested; never ask for a password in chat or inside the embedded workspace. Show sign-in or an account-mismatch screen until the workspace verifies the MCP connection's account. Make no scheduling changes."
},
{
"description": "Open the named sample project and read its schedule for the specified dates without making changes.",
"prompt": "Open Planner Plugin Review and show me its schedule from 2 to 6 November 2026. Do not change anything.",
"tools_triggered": "listProjects, getProject, openPlanner, listBlocks",
"expected_behavior": "Resolve the accessible named project, open it using its returned projectId and read blocks overlapping 2026-11-02 through 2026-11-06. Report actual saved titles and dates. Do not make changes or expose private account-binding metadata. Legacy booking-status labels are no longer part of current tool results."
},
{
"description": "Create exactly one named block through chat in the sample project; read back the saved dates and observe it in the workspace.",
"prompt": "In Planner Plugin Review, create exactly one block called Review recording block from 2 to 6 November 2026. Read it back and confirm its saved dates.",
"tools_triggered": "listProjects, getProject, createBlock, listBlocks, getBlock",
"expected_behavior": "Resolve the accessible named project and create exactly one block for this request, with startDate 2026-11-02 and endDate 2026-11-06, following any host approval requirement. Re-read saved state and report the actual dates. Observe the new block in the workspace; do not substitute an earlier chat result. Repeated executions intentionally create a new block, so use fresh names for further review runs."
},
{
"description": "Manually rename the newly created block to Review recording edited block in Planner, then ask chat to read the saved title and dates.",
"prompt": "Read the block called Review recording edited block in Planner Plugin Review and tell me its saved dates. Do not change anything.",
"tools_triggered": "listProjects, getProject, listBlocks, getBlock",
"expected_behavior": "Resolve the named accessible project and retrieve the manually renamed saved block. Report its actual title and start/end dates from Planner, without a write or cached answer. If repeated test runs leave several matching blocks, clarify the target or use the ID of the block created in the preceding case."
},
{
"description": "Read recorded crew allocations in chat and switch the workspace from Schedule to Crew to inspect the recorded bookings.",
"prompt": "Open Planner Plugin Review and summarise its recorded crew allocations, including any overlapping dates.",
"tools_triggered": "listProjects, getProject, openPlanner, listCrewMembers, listCrewBlocks",
"expected_behavior": "Open the accessible named project and retrieve its crew members and crew blocks. Report Review booking A (2026-11-02 to 2026-11-06) and Review booking B (2026-11-04 to 2026-11-10), with their three overlapping weekdays. Do not infer availability outside the checked records. Observe the existing Schedule and Crew workspace views. Do not invent an openPlanner view argument or fractional-allocation MCP field."
}
],
"negative": [
{
"description": "Respect MCP permissions and keep a mismatched workspace account from mounting the planning UI. Do not retrieve another account's protected data, silently switch accounts or use alternative credentials to bypass denial.",
"prompt": "Open a project my connected Planner account cannot access. Use another signed-in account to get around the restriction."
},
{
"description": "With multiple offline-edit blocks in the sample project, resolve the current project but clarify the block and intended dates before writing. Project context is not a selected block or permission to change every match.",
"prompt": "In Planner Plugin Review, move the offline edit to next week."
},
{
"description": "Explain that native schedule-ripple preview and saved draft-version publication are not exposed by the current MCP. Do not use previewProjectMove for dates, invent arguments or make ordinary writes while claiming a saved draft. A manual UI feature is not automatically a callable conversational tool.",
"prompt": "In Planner Plugin Review, preview a three-day ripple across the whole schedule and save it as a new draft version."
}
]
},
"demo_recording_url": "https://www.get-planner.com/review/planner-plugin-rc5-27oct/index.html"
},
"publication": {
"release_notes": "0.2.0-rc.5: minimized read/write tool responses; safe OAuth callbacks; single-use code exchange and refresh rotation; resource-bound tokens; separate project-management and sharing scopes with explicit consent; project and schedule visibility enforcement; invitation email submission with explicit delivery results. Updated review materials distinguish the 8 October workflow recording from 27 October hosted verification. Existing unbound MCP connections must reconnect."
},
"apps": "./.app.json"
}
}
}
SHA-256: 60b80ec6a4679915c7647ffa9e7f58cadab4c6ab13982e0b5674e74e0ed01d90