← Files Nexo CRMARCHIVED FILE

.codex-plugin/plugin.json

8.34 KB · Nov 14, 2026 · 01:27 UTC

↓ Download file

{
  "name": "app-6a983a073548819187b06f5222a8b3b0",
  "version": "1.0.7",
  "description": "Manage customer records and sales operations in an authenticated Nexo CRM workspace from ChatGPT and Codex.",
  "author": {
    "name": "CodePeak Agency",
    "email": "support@codepeak.agency",
    "url": "https://codepeak.agency"
  },
  "homepage": "https://nexo.codepeak.agency",
  "repository": "https://github.com/AbdelrahmanTarek790/Nexo",
  "keywords": [
    "crm",
    "sales",
    "productivity",
    "pipelines",
    "contacts"
  ],
  "mcpServers": "./.mcp.json",
  "interface": {
    "displayName": "Nexo CRM",
    "shortDescription": "Manage CRM sales operations",
    "longDescription": "Nexo CRM is a business operations tool for sales teams to manage customer records and sales pipelines from ChatGPT and Codex. Use it to find and update contacts, companies, and deals; configure CRM tables; move deals through pipeline stages; add notes; log sales activities; and review pipeline analytics. It can also search connected workspace knowledge, captures, and documents. Nexo only accesses data available to the authenticated account. Creating, updating, or deleting CRM data requires the corresponding Nexo permissions and may require user confirmation.",
    "developerName": "CodePeak Agency",
    "category": "Business & Operations",
    "capabilities": [
      "Search CRM records",
      "Manage contacts and deals",
      "Update sales pipelines",
      "Log notes and activities",
      "View workspace analytics",
      "Search workspace knowledge",
      "Read workspace documents"
    ],
    "websiteURL": "https://nexo.codepeak.agency",
    "supportURL": "https://nexo.codepeak.agency/support",
    "privacyPolicyURL": "https://nexo.codepeak.agency/privacy",
    "termsOfServiceURL": "https://nexo.codepeak.agency/terms",
    "defaultPrompt": [
      "Show me the tables in my Nexo workspace.",
      "Find CRM records matching a company or contact name.",
      "Summarize my current sales pipeline."
    ],
    "brandColor": "#4F46E5",
    "brandColorDark": "#818CF8",
    "composerIcon": "./assets/icon.png",
    "logo": "./assets/logo.png",
    "screenshots": [
      "./assets/screenshot.png"
    ]
  },
  "extensions": {
    "com.openai": {
      "review": {
        "demo_recording_url": "https://drive.google.com/file/d/10gdXcXlW5cs5GmIcUUK4eDhVtPXeAutp/view?usp=sharing",
        "test_cases": {
          "positive": [
            {
              "description": "List the seeded CRM table inventory. Reviewer setup: the connected test workspace contains Nexo's built-in Sample Pipeline with the six sample deals Northwind Coffee, Hale Bistro Group, Atlas Logistics, Juniper Dental, Maru Hotels, and Fieldwork Studio. Pass when the table list includes Sample Pipeline as a deals table with a record count of 6.",
              "prompt": "Show me all tables in my Nexo workspace, including each table's type and record count.",
              "tools_triggered": "nexo_list_tables",
              "expected_behavior": "Call nexo_list_tables with no arguments. Return a concise summary based only on the tool result. In the seeded reviewer workspace, the response must include Sample Pipeline, identify it as type deals, and report 6 records. Do not expose internal IDs unless the user asks for them."
            },
            {
              "description": "Find one exact deal in the seeded pipeline. Reviewer setup: Sample Pipeline contains Atlas Logistics in the Negotiation stage. Pass when search returns the matching deal and the response names both its table and stage.",
              "prompt": "Find the deal named Atlas Logistics and tell me which pipeline and stage it is in.",
              "tools_triggered": "nexo_search_records",
              "expected_behavior": "Call nexo_search_records with q set to Atlas Logistics and datasetType set to deals. Return the matching Atlas Logistics record from Sample Pipeline and state that its stage is Negotiation. Do not include unrelated records or unsupported details."
            },
            {
              "description": "Retrieve complete details for a record selected by name. Reviewer setup: Sample Pipeline contains Atlas Logistics. Pass when the app first resolves the record ID through search, then fetches that record and accurately reports its notes, recent activities, and linked records, including clearly stating when any returned list is empty.",
              "prompt": "Show me the notes, recent activities, and linked records for Atlas Logistics.",
              "tools_triggered": "nexo_search_records, nexo_get_record",
              "expected_behavior": "First call nexo_search_records with q set to Atlas Logistics and datasetType set to deals. Then call nexo_get_record using the recordId returned by the search result. Summarize only the returned Atlas Logistics record, including its Negotiation stage and the notes, recent_activities, and linked_records arrays. If an array is empty, say that no corresponding items were found rather than inventing content."
            },
            {
              "description": "Summarize the deterministic seeded sales pipeline. Reviewer setup: Sample Pipeline contains six deals distributed as Lead 2, Qualified 1, Negotiation 2, Won 1, and Lost 0. Pass when the response reports those counts and uses the tool's returned monetary total without calculating or inventing another value.",
              "prompt": "Summarize my sales pipeline with the total number of deals and the count in each stage.",
              "tools_triggered": "nexo_get_pipeline_summary",
              "expected_behavior": "Call nexo_get_pipeline_summary with no arguments. Report 6 total deals and the returned stage breakdown: Lead 2, Qualified 1, Negotiation 2, Won 1, and Lost 0. If a total pipeline value is shown, reproduce the value returned by the tool exactly and do not infer a different value."
            },
            {
              "description": "Retrieve workspace-level CRM analytics from the seeded reviewer workspace. Pass when the response reports the tool's total record count, per-table counts, deal count, and won/lost counts without adding unsupported metrics or identifiers.",
              "prompt": "Give me a workspace analytics overview with total records, per-table record counts, total deals, and won and lost deal counts.",
              "tools_triggered": "nexo_get_analytics",
              "expected_behavior": "Call nexo_get_analytics with no arguments. In the seeded reviewer workspace, report total_records 6, Sample Pipeline with record_count 6, total_deals 6, won_count 1, and lost_count 0. Any additional metric must come directly from deals_analytics. Do not expose internal IDs or unrelated account information."
            }
          ],
          "negative": [
            {
              "description": "Nexo can record an email activity but cannot send email. Do not invoke any Nexo tool, do not claim an email was sent, and explain that the user must use an email-capable service to perform the send.",
              "prompt": "Email every contact in my CRM and tell them our office is closed tomorrow."
            },
            {
              "description": "Nexo only accesses the authenticated private workspace and cannot discover prospects on the public web. Do not invoke any Nexo tool or fabricate leads; explain the limitation and offer to work with lead data the user provides or already stores in Nexo.",
              "prompt": "Search the public web for ten new enterprise sales leads and add them to my CRM."
            },
            {
              "description": "Nexo does not sell lead lists or process purchases. Do not invoke any Nexo tool, do not claim a purchase was made, and explain that purchasing is outside the plugin's capabilities.",
              "prompt": "Buy a verified list of 100 healthcare leads for me through Nexo."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "Nexo does not sell products or process purchases through the plugin."
      },
      "publication": {
        "release_notes": "Version 1.0.7 adds five reproducible positive review cases and three capability-boundary negative cases for the seeded reviewer workspace. It retains the OAuth dynamic client registration, PKCE S256 discovery metadata, corrected MCP schemas, structured results, and tool error handling introduced after the version 1.0.0 review."
      }
    }
  },
  "apps": "./.app.json"
}

SHA-256: 618201cfee57f4c2150f9f453e0223e4cc4954e8a1d9b459f55f273e52b30a12