{
  "service": "meet_geek",
  "displayName": "MeetGeek",
  "categories": [
    "AI",
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "MEETGEEK_API_KEY",
      "description": "MeetGeek API key sent as a Bearer token. Sign in at https://app.meetgeek.ai/integrations and generate a key from the Public API card."
    }
  ],
  "homepageUrl": "https://meetgeek.ai",
  "actions": [
    {
      "id": "meet_geek.get_highlights",
      "service": "meet_geek",
      "name": "get_highlights",
      "description": "Get highlights for a MeetGeek meeting, optionally filtered by type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "minLength": 1,
            "description": "MeetGeek meeting identifier."
          },
          "type": {
            "type": "string",
            "minLength": 1,
            "description": "Optional MeetGeek highlight type, such as next_steps."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "meetingId"
        ],
        "description": "Input parameters for reading MeetGeek meeting highlights."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "description": "MeetGeek meeting identifier returned with the highlights."
          },
          "highlights": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Highlight records returned by MeetGeek."
          }
        },
        "additionalProperties": false,
        "description": "MeetGeek highlights response."
      }
    },
    {
      "id": "meet_geek.get_insights",
      "service": "meet_geek",
      "name": "get_insights",
      "description": "Get KPI and improvement insights for a MeetGeek meeting.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "minLength": 1,
            "description": "MeetGeek meeting identifier."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "meetingId"
        ],
        "description": "Input parameters for reading MeetGeek meeting data."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "insights": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MeetGeek object returned by the API."
          }
        },
        "additionalProperties": false,
        "description": "MeetGeek insights response."
      }
    },
    {
      "id": "meet_geek.get_meeting",
      "service": "meet_geek",
      "name": "get_meeting",
      "description": "Get details for a MeetGeek meeting.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "minLength": 1,
            "description": "MeetGeek meeting identifier."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "meetingId"
        ],
        "description": "Input parameters for reading MeetGeek meeting data."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meeting": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MeetGeek object returned by the API."
          }
        },
        "additionalProperties": false,
        "description": "MeetGeek meeting response."
      }
    },
    {
      "id": "meet_geek.get_summary",
      "service": "meet_geek",
      "name": "get_summary",
      "description": "Get the summary and AI insights for a MeetGeek meeting.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "minLength": 1,
            "description": "MeetGeek meeting identifier."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "meetingId"
        ],
        "description": "Input parameters for reading MeetGeek meeting data."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "description": "MeetGeek meeting identifier returned with the summary."
          },
          "summary": {
            "type": "string",
            "description": "Meeting summary text returned by MeetGeek."
          },
          "aiInsights": {
            "type": "string",
            "description": "AI insights text returned by MeetGeek."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A MeetGeek object returned by the API."
          }
        },
        "additionalProperties": false,
        "description": "MeetGeek meeting summary response."
      }
    },
    {
      "id": "meet_geek.get_transcript",
      "service": "meet_geek",
      "name": "get_transcript",
      "description": "Get paginated transcript sentences for a MeetGeek meeting.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "minLength": 1,
            "description": "MeetGeek meeting identifier."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 500,
            "description": "Number of records to fetch, from 1 to 500."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Pagination cursor returned by MeetGeek."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "meetingId"
        ],
        "description": "Input parameters for reading MeetGeek meeting transcript sentences."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meetingId": {
            "type": "string",
            "description": "MeetGeek meeting identifier returned with the transcript."
          },
          "sentences": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Transcript sentence records returned by MeetGeek."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "next": {
                "type": "string",
                "description": "Cursor for the next page of results."
              },
              "limit": {
                "type": "integer",
                "description": "Number of records requested for this page."
              }
            },
            "additionalProperties": true,
            "description": "MeetGeek pagination metadata."
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor to pass into the next request, when one is available."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Paginated MeetGeek transcript response."
      }
    },
    {
      "id": "meet_geek.list_meetings",
      "service": "meet_geek",
      "name": "list_meetings",
      "description": "List paginated past meetings from MeetGeek.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 500,
            "description": "Number of records to fetch, from 1 to 500."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Pagination cursor returned by MeetGeek."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for reading a paginated MeetGeek collection."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meetings": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Meetings returned by MeetGeek."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "next": {
                "type": "string",
                "description": "Cursor for the next page of results."
              },
              "limit": {
                "type": "integer",
                "description": "Number of records requested for this page."
              }
            },
            "additionalProperties": true,
            "description": "MeetGeek pagination metadata."
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor to pass into the next request, when one is available."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Paginated MeetGeek meetings response."
      }
    },
    {
      "id": "meet_geek.list_team_meetings",
      "service": "meet_geek",
      "name": "list_team_meetings",
      "description": "List paginated past meetings for a MeetGeek team.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "teamId": {
            "type": "integer",
            "minimum": 1,
            "description": "MeetGeek team identifier."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 500,
            "description": "Number of records to fetch, from 1 to 500."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "description": "Pagination cursor returned by MeetGeek."
          },
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "required": [
          "teamId"
        ],
        "description": "Input parameters for reading a team's MeetGeek meetings."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "meetings": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Meetings returned by MeetGeek."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "next": {
                "type": "string",
                "description": "Cursor for the next page of results."
              },
              "limit": {
                "type": "integer",
                "description": "Number of records requested for this page."
              }
            },
            "additionalProperties": true,
            "description": "MeetGeek pagination metadata."
          },
          "nextCursor": {
            "anyOf": [
              {
                "type": "string",
                "description": "Cursor to pass into the next request, when one is available."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Paginated MeetGeek meetings response."
      }
    },
    {
      "id": "meet_geek.list_teams",
      "service": "meet_geek",
      "name": "list_teams",
      "description": "List MeetGeek teams available to the API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "region": {
            "type": "string",
            "enum": [
              "default",
              "eu",
              "us"
            ],
            "description": "MeetGeek API region used for the request."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for selecting a MeetGeek API region."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "shareAccess": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Teams where the API key can share meetings."
          },
          "viewAccess": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A MeetGeek object returned by the API."
            },
            "description": "Teams where the API key can view meetings."
          }
        },
        "additionalProperties": false,
        "description": "MeetGeek teams response."
      }
    }
  ]
}
