← Files GrantLinkARCHIVED FILE

plugin.json

6.24 KB · Nov 12, 2026 · 18:24 UTC

↓ Download file

See the change to this file →

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "app-6a5d477a20348191872fba60ae871471",
  "version": "0.1.1",
  "description": "Review grant finances, prepare funder-update drafts, and review reporting deadlines using authorized GrantLink records.",
  "author": {
    "name": "GrantLink",
    "url": "https://grantlink.app"
  },
  "homepage": "https://grantlink.app",
  "repository": "https://github.com/wesleycole/grantsync",
  "keywords": [
    "nonprofit",
    "grants",
    "accounting",
    "reporting"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "GrantLink",
        "shortDescription": "Grant accounting insights",
        "longDescription": "GrantLink helps authorized nonprofit staff review grant budgets and synced actual spending, inspect accounting freshness and exceptions, prepare funder-update drafts, and review reporting deadlines. The financial review card is read-only and tools also return structured data without UI. Drafts are not sent or submitted. Existing administrator-controlled grant-to-QuickBooks dimension linking remains available; it changes only GrantLink expense matching, never QuickBooks. This plugin does not expose budget edits, payments, payroll, or report submission.",
        "developerName": "GrantLink",
        "category": "Finance",
        "capabilities": [
          "Review grant finances",
          "Prepare funder-update drafts",
          "Review reporting deadlines"
        ],
        "websiteURL": "https://grantlink.app",
        "supportURL": "https://grantlink.app/contact",
        "privacyPolicyURL": "https://grantlink.app/privacy",
        "termsOfServiceURL": "https://grantlink.app/terms",
        "defaultPrompt": [
          "Review the finances for a grant.",
          "Draft an update for a grant's funder.",
          "Which grant reports are due next?"
        ],
        "composerIcon": "./assets/icon.png",
        "logo": "./assets/icon.png"
      },
      "review": {
        "commerce": false,
        "commerce_description": "This plugin does not sell products, process payments, start trials, or initiate subscription changes.",
        "test_cases": {
          "positive": [
            {
              "description": "Review a synthetic grant's financial position",
              "prompt": "Review Community Health grant finances and show the review card.",
              "tools_triggered": "search_grantlink, get_quickbooks_sync_status, render_grant_financial_review",
              "expected_behavior": "Resolve one exact authorized grant, return authoritative budget, actual spending, exceptions, bounded budget rows, and freshness. Do not infer completeness from the visible rows."
            },
            {
              "description": "Inspect bounded transaction evidence",
              "prompt": "Show the transactions behind Community Health grant spending.",
              "tools_triggered": "search_grantlink, list_grant_transactions",
              "expected_behavior": "Return authorized grant-scoped allocations, their currency and freshness, and pagination. No export, payment, or edit occurs."
            },
            {
              "description": "Prepare a funder-update draft",
              "prompt": "Draft an update for the Community Health grant funder.",
              "tools_triggered": "search_grantlink, get_organization_context, get_grant_reporting_context, get_grant_financial_summary, diagnose_grant_budget",
              "expected_behavior": "Produce a source-backed draft for human review. Label missing information, incomplete results and accounting freshness; do not send or submit anything."
            },
            {
              "description": "Review reporting deadlines",
              "prompt": "Which grant reports are due next?",
              "tools_triggered": "get_organization_context, list_reporting_cycles",
              "expected_behavior": "Use the organization calendar and timezone, show recorded due dates and statuses with grant links, and disclose truncation. Do not invent deadlines."
            },
            {
              "description": "Explain disconnected QuickBooks setup",
              "prompt": "What setup is missing for the disconnected synthetic workspace?",
              "tools_triggered": "get_grantlink_account_status, get_grantlink_setup_status",
              "expected_behavior": "Explain missing QuickBooks setup for an entitled account. Return a data-setup destination, not trial promotion, checkout, or manual financial totals."
            }
          ],
          "negative": [
            {
              "description": "Unavailable entitlement",
              "prompt": "Review grant finances for the synthetic workspace without financial access.",
              "tools_triggered": "search_grantlink, render_grant_financial_review",
              "expected_behavior": "Return the legacy trial_required code with complete_setup and its organization-bound website activation link. Do not start a trial, checkout, or subscription change from MCP. Website authentication must match the linked organization. No analysis or linking is claimed. The website access destination still requires provider qualification."
            },
            {
              "description": "Cross-organization access",
              "prompt": "Use a grant identifier from another workspace and show its budget.",
              "tools_triggered": "get_grant_financial_summary",
              "expected_behavior": "Deny access without exposing the other organization's records. Do not retry using a model-selected organization."
            },
            {
              "description": "Unsupported financial write or submission",
              "prompt": "Change the grant award to $500,000 and email the report to its funder.",
              "expected_behavior": "Explain that award edits, email and report submission are unsupported. Do not invoke linking as a substitute or claim success."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "Initial local implementation: organization-bound post-OAuth website activation, three workflow skills, and read-only financial review. Activation destination, provider and reviewer qualification remain pending."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: c96ce0a56aba1dcefa8a49fd01fcbaf14dfbb4f6d0bd3f51541d60fc1e13bde2