{
  "info": {
    "name": "Extrovert — mcp.ai",
    "description": "REST API for the Extrovert MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/extrovert",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "extrovert_create_context",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/context",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "context"
          ]
        },
        "description": "Create a Context for a user. The active plan may cap Contexts per user, so check workspace counters and list existing Contexts first.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"user_context\": \"\",\n  \"owner_user_id\": \"\",\n  \"company_context\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_create_style",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/style",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "style"
          ]
        },
        "description": "Create a writing Style for a user. The active plan may cap Styles per user, so check workspace counters and list existing Styles first.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"owner_user_id\": \"\",\n  \"dm_instructions\": \"\",\n  \"comment_instructions\": \"\",\n  \"learning_mode_enabled\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_delete_context",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/context",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "context"
          ]
        },
        "description": "Permanently delete one Context by UUID. This irreversible operation cascades to all attached Insights and DM playbook entries. It fails while an active campaign references the Context.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"context_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_delete_style",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/style",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "style"
          ]
        },
        "description": "Permanently delete one Style by UUID. This cascades to all attached Comment Examples and fails while an active campaign references the Style.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"style_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_find_prospect_by_linkedin_url",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/find/prospect/by/linkedin/url",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "find",
            "prospect",
            "by",
            "linkedin",
            "url"
          ]
        },
        "description": "Check whether a LinkedIn profile URL already exists among the team's prospects and return every matching prospect. This is a read-only lookup and does not add the profile.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"linkedin_url\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_get_campaign",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/campaign",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "campaign"
          ]
        },
        "description": "Load full configuration and state for one campaign by its UUID. Use LIST_CAMPAIGNS to discover the required campaign_id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"campaign_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_get_prospect",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/prospect",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "prospect"
          ]
        },
        "description": "Load one existing prospect by UUID with LinkedIn profile, campaign and list bindings, flags, connection data, and engagement statistics.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"prospect_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_get_workspace_plan_features",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/workspace/plan/features",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "workspace",
            "plan",
            "features"
          ]
        },
        "description": "Return the selected workspace's active plan, API capabilities, feature flags, and quota counters. Use this before quota-sensitive operations.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_list_campaigns",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/campaigns",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "campaigns"
          ]
        },
        "description": "Return all Prospects and Topic campaigns visible to the connected user, including their running state, owner, Context, Style, filters, automation, and sharing configuration.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_list_contexts",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/contexts",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "contexts"
          ]
        },
        "description": "Return all complete Context records owned by a user. Contexts provide company and user background used for generated comments and direct messages.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"owner_user_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_list_prospects",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/prospects",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "prospects"
          ]
        },
        "description": "Return one page of existing prospects with campaign and list bindings, LinkedIn profile data, flags, connection state, and engagement statistics. This does not add prospects.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"limit\": 0,\n  \"search\": \"\",\n  \"list_id\": \"\",\n  \"sort_by\": \"\",\n  \"list_ids\": \"\",\n  \"sort_order\": \"\",\n  \"next_cursor\": \"\",\n  \"campaign_ids\": \"\",\n  \"is_important\": false,\n  \"post_frequency\": \"\",\n  \"number_of_touch_points\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_list_styles",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/styles",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "styles"
          ]
        },
        "description": "Return all complete writing Styles owned by a user, including learning mode and separate comment and direct-message instructions.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"owner_user_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_list_team_members",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/team/members",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "team",
            "members"
          ]
        },
        "description": "Return users visible in the selected team, including the user IDs required to list or create owner-scoped contexts and styles.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"registration_type\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_update_context",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/context",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "context"
          ]
        },
        "description": "Fully replace a Context's name, company background, and user background. Changes affect subsequent generated comments and DMs immediately.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"context_id\": \"\",\n  \"user_context\": \"\",\n  \"company_context\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "extrovert_update_style",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/style",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "style"
          ]
        },
        "description": "Update a Style's required name and learning-mode setting, optionally replacing or clearing its comment and DM instructions. Changes affect subsequent generation immediately.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"name\": \"\",\n  \"style_id\": \"\",\n  \"dm_instructions\": \"\",\n  \"comment_instructions\": \"\",\n  \"learning_mode_enabled\": false\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}