Tenzo AI MCP
Ask your recruiting data anything. The Tenzo AI MCP server connects your AI assistant to your hiring pipeline, so instead of clicking through screens you can just ask: who applied for this role, where each candidate stands, how they did on their AI screening call, and what's changed this week. Pull up a candidate and follow them end to end - their applications and stages, resume, SMS and email history, and the full screening-call transcript, grade, and summary. Check how a job is configured, review meeting notes, and surface hiring analytics, all in plain language. Access is read-only and OAuth-authenticated, so the assistant can read your data but never change it, and everything stays scoped to your organization.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Interview Intelligence & Candidate Sourcing
- Secondary Subcategories
- None listed
- Brand
- Tenzo AI
- Access
- Account required
- First tracked
- 2026-07-14
- Tool count
- 53
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is visible.
ChatGPT Plugin Discoverability Score
ChatGPT organic discovery is not live yet
Tenzo AI MCP is tracked in the ChatGPT Plugin registry. Public organic-discovery measurement is not live for ChatGPT yet, so there is no score to publish today.
Get notified when your score goes live
Enter your work email and we’ll notify you when ChatGPT Plugin organic discovery scoring launches.
No spam. Unsubscribe any time.
Competing in ChatGPT Interview Intelligence & Candidate Sourcing
View CategoryHow the Discoverability Score works
Organic discovery scoring for Tenzo AI MCP on ChatGPT is not live yet. The score will use measured agent conversations when it launches.
Organic discovery scoring is pending. Your Plugin score will appear on this scale when measurement goes live.
FoundDiagnostic
Whether Claude found your Plugin in connector search. It must be Found before it can reach the picker, but the score counts picker appearances—not search results.
PickedMain score
How often your Plugin appeared in the picker, or Claude invoked it directly, across contested conversations. This percentage is the Discoverability Score; the headline number is rounded.
PositionedDiagnostic
What position your Plugin appeared in when it was shown in the picker. This shows prominence, but it does not affect the score.
53 tools agents can invoke
Get analytics metrics Return analytics metrics and chart payloads for the filtered scope (dashboard + supplementary SMS/time-saved/satisfaction series used by the analytics page). Filters align to the analytics dashboard UI: optional **`date_range`** (JSON string), **`folder_id`**, **`campaign_id`**, **`candidate_source`**, and **`recruiter`**. Args: date_range: JSON-encoded date range, e.g. `{"start_date":"2026-01-01T00:00:00Z","end_date":"2026-01-31T23:59:59Z"}`. folder_id: Optional folder id to scope analytics. campaign_id: Optional job/campaign id to scope analytics. candidate_source: Optional candidate source filter. Supports `sourced`, `applied`, or comma-separated values like `sourced,applied`. recruiter: Optional comma-separated recruiter email list.
Get application **DEPRECATED:** use the list endpoint with `ids` (which now accepts a Tenzo id OR an ATS remote id) for single or batch lookup. Returns a single record when you supply **exactly one** lookup key: **`id`** (Tenzo UUID) **or** **`remote_id`** (your identifier). Passing both or neither is invalid. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. remote_id: Your application id—same value as `application.remote_id` on `POST /api/v1/application`. Exactly one of **`id`** or **`remote_id`** is required.
Get application by candidate and job **DEPRECATED:** use `GET /applications` with `candidate_id` + `job_id` filters instead. Resolve a (candidate_id, job_id) pair to its application record. Use this when you have the Tenzo candidate id and job id but not the application id. Returns 404 when the candidate has no application on that job. Args: candidate_id: Tenzo internal UUID for the candidate (org-scoped). job_id: Tenzo internal UUID for the job/campaign (org-scoped).
Get application email Scoped to an application: supply **exactly one** of **`id`** (Tenzo internal application UUID) **or** **`remote_id`** (your `application.remote_id` from `POST /application`). Passing both or neither returns **400**. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. application_remote_id: Your application id—same value as `application.remote_id` on `POST /api/v1/application`. Exactly one of **`id`** or **`remote_id`** is required.
Get application SMS Scoped to an application: supply **exactly one** of **`id`** (Tenzo internal application UUID) **or** **`remote_id`** (your `application.remote_id` from `POST /application`). Passing both or neither returns **400**. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. application_remote_id: Your application id—same value as `application.remote_id` on `POST /api/v1/application`. Exactly one of **`id`** or **`remote_id`** is required.
Get ATS integration dynamic configuration schema
Audit event filter options Return the distinct filter values available for this org's audit log (the set of event types and entity types actually present). Use these values to populate the filters when calling list_audit_events.
Get call Returns one call session for your organization. **`id`** (Tenzo call UUID) is **required**. This API does not expose a customer `remote_id` for calls. Args: id: Tenzo internal UUID for this interview / call session.
Get Call Quality Evaluation Return the AI (LLM-as-a-judge) quality evaluation for a single call, including its overall score and the rationale, keyed by the Tenzo call/interview UUID. Returns 404 when the call does not exist in this org or when no evaluation has been generated for it yet. Args: tenzo_id: Tenzo internal call/interview UUID.
Get call transcript Returns voice `call_transcript` and optionally aggregate `sms_transcript` when available. **`id`** (Tenzo call UUID) is **required** (no `remote_id` for calls in this API). Args: id: Tenzo internal UUID for this interview / call session.
Get candidate **DEPRECATED:** use the list endpoint with `ids` (which now accepts a Tenzo id OR an ATS remote id) for single or batch lookup. Returns a single record when you supply **exactly one** lookup key: **`id`** (Tenzo UUID) **or** **`remote_id`** (your identifier). Passing both or neither is invalid. Args: id: Tenzo internal UUID for this candidate. Exactly one of **`id`** or **`remote_id`** is required. remote_id: Your candidate identifier—same value as `candidate.remote_id` on `POST /api/v1/application`. Exactly one of **`id`** or **`remote_id`** is required.
Get Candidate Resume Return one candidate's parsed resume text plus structured work-experience entries, keyed by the Tenzo candidate UUID. A real candidate with no resume yet still returns a view with null resume text and an empty experience list; an unknown candidate returns 404. Args: tenzo_id: Tenzo internal candidate UUID.
Get Doc Content Return the full content of one product/API documentation file addressed by its relative path (as listed by list_docs). Returns 404 if the path is unknown or not an allowed doc file.
Get per-question grading analytics for a job Aggregate per-question grading stats across all completed graded interviews for a job (identified by **`campaign_id`**). For each question returns sample size, mean/median grade, min/max, pass rate, and a leniency signal (`possibly_too_harsh`, `possibly_too_lenient`, or `balanced`). Questions are sorted worst-first and `worst_question` names the lowest-scoring one. Read-only; does not change grading.
Get interview result Application-scoped interview result payload. Supply **exactly one** of **`id`** (Tenzo internal application UUID / `candidate_campaign_id`) **or** **`remote_application_id`** (your `application.remote_id` from `POST /application`; `remote_id` is accepted for backwards compatibility). Response fields match the Results Webhook callback payload. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. remote_application_id: Your application id (same value as `application.remote_id` on `POST /api/v1/application`). Exactly one of `id` or `remote_application_id` is required.
Get rules Returns the org's script-generation rule sets — the instruction bundles used to generate interview scripts — one per template. Each rule set is identified by its **`id`** and carries a **`name`**, an **`is_default`** flag, and the instruction fields: **`instructions`**, **`variables`**, **`call_intro_instructions`**, **`initial_sms_instructions`**, **`initial_email_instructions`**, **`resume_requirements_instructions`**, **`screening_questions_instructions`**, **`grading_instructions_instructions`**, and **`outro_instructions`**. The optional **`id`** query param narrows the result to a single rule set by its id. Args: id: Optional rule set id to narrow the result to a single rule set; omit to list all.
Get job **DEPRECATED:** use the list endpoint with `ids` (which now accepts a Tenzo id OR an ATS remote id) for single or batch lookup. Returns a single record when you supply **exactly one** lookup key: **`id`** (Tenzo UUID) **or** **`remote_id`** (your identifier). Passing both or neither is invalid. Args: id: Tenzo internal UUID for this job. Exactly one of **`id`** or **`remote_id`** is required. remote_id: Your job identifier—same value as `remote_id` on `POST /api/v1/job`. Exactly one of **`id`** or **`remote_id`** is required.
List candidate questions for a job (paginated) Args: job_id: Tenzo internal job (campaign) UUID.
Get resume filter requirements for a job Args: job_id: Tenzo internal job (campaign) UUID.
Get curated job script payload Returns Cosmos script content (screening requirements, outreach copy) scoped to one job. Args: job_id: Tenzo internal job (campaign) UUID.
Get effective merged job settings Return the effective settings for one job, computed by merging org-level defaults with any job-specific overrides (the override wins where set). Covers notification, outreach hours, call retry, scheduling, avatar, and related configuration. Keyed by the Tenzo job (campaign) UUID. Args: job_id: Tenzo internal job (campaign) UUID.
Get media asset Returns one media asset metadata record. **`id`** (Tenzo media asset UUID) is **required**. There is no customer `remote_id` for media items in this API. Args: id: Tenzo internal UUID for this media asset.
Get Meeting Copilot note Fetch one Meeting Copilot note by Tenzo internal id. Returns the note's structured sections, markdown summary, transcript, and associated meeting metadata. Args: tenzo_id: Tenzo internal Meeting Copilot note UUID.
Get Meeting Copilot template Fetch one Meeting Copilot template by Tenzo internal id. Returns the template's structured sections, context, constraints, and compliance rules. Args: tenzo_id: Tenzo internal Meeting Copilot template UUID.
Get org-level interview settings defaults Returns org-level Interview Settings defaults from Settings > Interview Settings > Caller Settings. Use `/job/settings` for a specific job's merged effective settings.
Get sourced-candidate counts per user Return the number of candidates each recruiter sourced over the requested scope, grouped by the sourcing recruiter's email. Answers questions like "how many people did each user source this week?". Optional **`date_range`** (JSON string, filters on when the candidate was sourced), **`folder_id`**, and **`campaign_id`** scope the result. Args: date_range: JSON-encoded date range, e.g. `{"start_date":"2026-01-01T00:00:00Z","end_date":"2026-01-31T23:59:59Z"}`. folder_id: Optional folder id to scope analytics. campaign_id: Optional job/campaign id to scope analytics.
Fetch one template (or question constraint) by id within a family. Replaces the former per-kind get_*_template tools. Args: kind: Which template family the id belongs to. One of: script_generation, background_info, redaction, suggested_follow_up, voicemail_sms_prompt, flagged_event, summary, thank_you_email, custom_booking_outro, rejection_email, resume_feedback_email, interview_results_layout, question_constraints. template_id: The template id (or constraint id for question_constraints). Returns: The template definition on success, or {error, ...} on failure.
Get top candidates for a job Return the top candidates for a job (identified by **`campaign_id`**) ranked by their best graded interview: `overall_grade` descending, tie-broken by `question_completion_rate`. Use **`limit`** to set how many to return (default 5, max 50). Answers questions like "who are the top 5 candidates for this role?". Args: limit: How many candidates to return (default 5, clamped to 1-50).
Get User Args: tenzo_id: Tenzo internal user UUID.
Get application comments Scoped to an application: supply **exactly one** of **`id`** (Tenzo internal application UUID) **or** **`remote_id`** (your `application.remote_id` from `POST /application`). Passing both or neither returns **400**. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. application_remote_id: Your application id—same value as `application.remote_id` on `POST /api/v1/application`. Exactly one of **`id`** or **`remote_id`** is required.
List applications Returns a paginated list scoped to your organization (from the API key). Use **`updated_after`** (ISO 8601) for incremental sync. Use **`cursor`** from the prior response `meta.next_cursor` when **`meta.has_more`** is true. Use **`sort`** (`updated_at_asc` or `updated_at_desc`, default **`updated_at_desc`**) to order rows by each record's `updated_at` (stable ordering for **`cursor`** pagination). Optional filters: **`job_id`** / **`candidate_id`** (Tenzo UUIDs) or **`job_remote_id`** / **`candidate_remote_id`** (your ATS ids) — at most one per pair; a UUID from a prior result goes in **`*_id`**. Also **`tenzo_stage`**. Args: limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. updated_before: If set, only return records whose `updated_at` is on or before this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). created_after: ISO-8601 timestamp (must include a timezone offset, e.g. `2026-01-01T00:00:00Z`). Returns only rows created on or after this instant. created_before: ISO-8601 timestamp (must include a timezone offset). Returns only rows created on or before this instant. job_id: When set, only return applications tied to this Tenzo job UUID (same internal id as `application.job_id` on `POST /api/v1/application`). job_remote_id: When set, only return applications tied to this job via the ATS/job remote identifier (same value as job `remote_id` on `POST /api/v1/job`). folder_id: When set, only return applications on jobs inside this folder. Same internal id as the folder id from `GET /api/v1/folders`. candidate_id: When set, only return applications for this Tenzo candidate UUID (the organization's internal candidate id). candidate_remote_id: When set, only return applications for this candidate identifier (same as `candidate.remote_id` on `POST /api/v1/application`). candidate_name: When set, only return applications whose candidate's full name contains this substring (case-insensitive). candidate_sources: When set, only return applications whose `candidate_source` is in this list (e.g. `candidate_sources=manual&candidate_sources=sourced`). sort: Sort order by each row's `updated_at`. `updated_at_desc` returns newest-first (default); `updated_at_asc` returns oldest-first. Allowed values: updated_at_asc, updated_at_desc. tenzo_stage: When set, only return applications in this Tenzo lifecycle stage (same as `tenzo_stage` on the application row; e.g. `OUTREACH`, `CALL_COMPLETED`). For multiple stages, use `tenzo_stages` instead. tenzo_stages: When set, only return applications whose `tenzo_stage` is in this list (e.g. `tenzo_stages=OUTREACH&tenzo_stages=CALL_COMPLETED`). Combines with the singular `tenzo_stage` via OR if both are supplied. ids: When set, only return applications whose Tenzo id OR ATS remote id is in this list (e.g. `ids=<uuid-or-remote-id>&ids=...`, max 200). Combine with other filters.
List ATS integration rules
List ATS integrations
List audit events Org-scoped audit log (API key). Supports time range and type filters. Args: start_time: ISO 8601 with timezone; events on or after this `created_at`. end_time: ISO 8601 with timezone; events on or before this `created_at`. event_types: Filter by one or more event types. entity_type: Filter by audited entity type. entity_name: Case-insensitive search over supported audited entity names. user_email: Case-insensitive search over the actor/user email. limit: Max events to return. offset: Number of events to skip.
List calls Returns a paginated list scoped to your organization (from the API key). Use **`updated_after`** (ISO 8601) for incremental sync. Use **`cursor`** from the prior response `meta.next_cursor` when **`meta.has_more`** is true. Optional: narrow with **at most one** of **`candidate_id`** (Tenzo candidate UUID), **`call_id`** (Tenzo call UUID), or **`application_id`** (Tenzo application UUID); omit all for org-wide paging. Args: limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. candidate_id: When set, scope the list to calls for this Tenzo candidate UUID. Use at most one of **`candidate_id`**, **`call_id`**, or **`application_id`**. call_id: When set, scope the list to this Tenzo call UUID (typically zero or one row). Use at most one of **`candidate_id`**, **`call_id`**, or **`application_id`**. application_id: When set, scope the list to calls tied to this Tenzo application UUID (internal application / candidate-campaign id). Use at most one of **`candidate_id`**, **`call_id`**, or **`application_id`**. ids: When set, only return calls whose Tenzo id is in this list (e.g. `ids=<uuid>&ids=<uuid>`, max 200). Combine with other filters.
List Candidate ATS Notes List the ATS-synced timeline notes attached to a candidate, newest first, keyed by the Tenzo candidate UUID. Returns up to `limit` notes; an unknown candidate returns 404. Args: tenzo_id: Tenzo internal candidate UUID.
List candidates Returns a paginated list scoped to your organization (from the API key). Use **`updated_after`** (ISO 8601) for incremental sync. Use **`cursor`** from the prior response `meta.next_cursor` when **`meta.has_more`** is true. Use **`sort`** (`updated_at_asc` or `updated_at_desc`, default **`updated_at_desc`**) to order rows by each record's `updated_at` (stable ordering for **`cursor`** pagination). Args: limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. sort: Sort order by each row's `updated_at`. `updated_at_desc` returns newest-first (default); `updated_at_asc` returns oldest-first. Allowed values: updated_at_asc, updated_at_desc. ids: When set, only return candidates whose Tenzo id OR ATS remote id is in this list (e.g. `ids=<uuid-or-remote-id>&ids=...`, max 200). Combine with other filters.
List Doc Paths List the relative paths of all available product/API documentation files (Markdown docs). Use a returned path with get_doc to fetch that document's content.
List Folder Contents List the direct children of a folder: its immediate subfolders plus the jobs filed directly in it. Omit folder_id (or pass null) to list the org root: top-level folders and jobs not in any folder. Does not recurse into subfolders; drill down by re-calling with a subfolder's id. Each list is independently capped at `limit`; use search_jobs for org-wide job listings. Args: folder_id: Tenzo internal folder UUID. Omit (or pass `null`) to list the org root — top-level folders + jobs not in any folder.
List interview results Application-scoped interview result payload. Supply **exactly one** of **`id`** (Tenzo internal application UUID / `candidate_campaign_id`) **or** **`remote_application_id`** (your `application.remote_id` from `POST /application`; `remote_id` is accepted for backwards compatibility). Response fields match the Results Webhook callback payload. Supports standard list paging/sync parameters: **`limit`**, **`cursor`**, **`updated_after`**, and **`sort`**. Args: id: Tenzo internal UUID for this application (CandidateCampaignInfo id). Exactly one of **`id`** or **`remote_id`** is required. remote_application_id: Your application id (same value as `application.remote_id` on `POST /api/v1/application`). Exactly one of `id` or `remote_application_id` is required. limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. sort: Sort order by each row's `updated_at`. `updated_at_desc` returns newest-first (default); `updated_at_asc` returns oldest-first. Allowed values: updated_at_asc, updated_at_desc.
List jobs Returns a paginated list scoped to your organization (from the API key). Use **`updated_after`** (ISO 8601) for incremental sync. Use **`cursor`** from the prior response `meta.next_cursor` when **`meta.has_more`** is true. Use **`sort`** (`updated_at_asc` or `updated_at_desc`, default **`updated_at_desc`**) to order rows by each record's `updated_at` (stable ordering for **`cursor`** pagination). Args: limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. sort: Sort order by each row's `updated_at`. `updated_at_desc` returns newest-first (default); `updated_at_asc` returns oldest-first. Allowed values: updated_at_asc, updated_at_desc. outreach_state: Optional outreach state filter: `paused` or `resumed`. name_contains: Optional case-insensitive partial match against job name/title. Use for operator search, not incremental sync. ids: When set, only return jobs whose Tenzo id OR ATS remote id is in this list (e.g. `ids=<uuid-or-remote-id>&ids=...`, max 200). Combine with other filters.
List media assets (audio / video metadata) Returns a paginated list scoped to your organization (from the API key). Use **`updated_after`** (ISO 8601) for incremental sync. Use **`cursor`** from the prior response `meta.next_cursor` when **`meta.has_more`** is true. Args: limit: Maximum number of rows to return in this page (1-100). Default: 50. cursor: Opaque pagination cursor from the previous response's `next_cursor`. Omit on the first request. updated_after: If set, only return records whose `updated_at` is strictly after this timestamp (ISO 8601, e.g. `2026-01-15T10:00:00Z`). Used for incremental sync. ids: When set, only return media assets whose Tenzo id is in this list (e.g. `ids=<uuid>&ids=<uuid>`, max 200). Combine with other filters.
List Meeting Copilot notes List Meeting Copilot notes (recorded meeting/intake/interview sessions) in the org, newest first. Distinct from candidate ATS-timeline notes — those live on the candidate. Optional `q` substring matches against note name, candidate name, or job name. Optional `type` filters by meeting type. Args: q: Optional substring matched against note name, candidate name, or job name. type: Filter by note type (interview, intake, sales, other). ids: When set, only return notes whose Tenzo id is in this list (e.g. `ids=<uuid>&ids=<uuid>`, max 200). Combine with other filters.
List Meeting Copilot templates List Meeting Copilot templates (note presets) in the org. These define the structured sections, context, and constraints used to shape a meeting note. Optional `q` substring matches against template name. Optional `type` filters by meeting type. Args: q: Optional substring matched against template name. type: Filter by template type (interview, intake, sales, other). ids: When set, only return templates whose Tenzo id is in this list (e.g. `ids=<uuid>&ids=<uuid>`, max 200). Combine with other filters.
List your org's templates of a given family. Replaces the former per-kind list_*_templates tools. Args: kind: Which template family to list. One of: script_generation, background_info, redaction, suggested_follow_up, voicemail_sms_prompt, flagged_event, summary, thank_you_email, custom_booking_outro, rejection_email, resume_feedback_email, interview_results_layout, question_constraints. name: Optional case-insensitive substring filter on the template name. Returns: {items: [{template_id, name, updated_at}]} on success, or {error, ...} on failure.
List unanswered candidate questions Rows where the model declined to answer the candidate's question (`is_answered=false`), optionally since a timestamp. Args: since: ISO 8601 timestamp with timezone; only questions created at or after this time.
List users in organization Args: name: Optional substring match on first name, last name, or email.
Search Candidates by Name Find candidates by a case-insensitive substring match on full name (email is not searched). Returns up to `limit` lightweight candidate views (id, name, email, phone, timezone). This is the primary way to resolve a person's name to a candidate_id for use with other tools.
Search Folders by Name Find folders by a case-insensitive substring match on the folder name, returning up to `limit` folder summaries. Use this to resolve a folder name to a folder_id without walking the tree.
Search Interviews Search interview records, where each record is one candidate summarized to their most recent call for a job. Filter by candidate name (substring), call statuses, completion fraction range, score range, last-called date range, and job_id, folder_id, or candidate_id. Returns up to `limit` rows; the response flags likely truncation when score/completion filters may have dropped rows below the limit.
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Tenzo AI MCP alternatives on ChatGPT?
As of 2026-08-14, Tenzo AI MCP competes with BrightHire, Interview Feedback Extractor, Juicebox, Metaview, SeekOut, Testlify, Umamy, Vettara in ChatGPT Interview Intelligence & Candidate Sourcing, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.