Skip to main content
Glama

Re-open interview for another attempt

request_another_interview_attempt
Destructive

[Results] Re-open a submitted interview result so the candidate can take it again: the attempt is marked failed, the same result goes back to draft and the recruiter's decision on it is cleared. The candidate may then continue, keeping the answers already given, or start over from scratch. There is no preview, and this tool notifies nobody, the candidate included. More attempts on the whole interview are set by interview_attempts in update_interview. Company owners, recruiters and platform admins only. interview_result_id from list_interview_results: a single-stage row's id, a multi-stage row's interview_result_id.

Every argument in full, with examples: get_tool_reference.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "interview_result_id": "<interview_result_id>"
    },
    "name": "request_another_interview_attempt"
  }
}

Input Schema

NameRequiredDescriptionDefault
llm_modelNoYour model id, e.g. "claude-opus-4-8"; "unknown" if unsure. For analytics.
conversation_idNoThe conversation_id this server returned earlier in this conversation, unchanged, including after later user messages. Omit it if you have none. Recorded for the server developer's analytics.
interview_result_idYesThe interview result to reopen for another attempt.

Output Schema

NameRequiredDescriptionDefault
_mcp_instructionsNoServer-issued metadata for this conversation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • removedInput schema / properties / interview_result_id / example
      Removed value: -"93c98d21-e04d-4a84-9afa-ed154cf73636"
    • addedInput schema / properties / llm_model
      Added value: +{
      +  "description": "Your model id, e.g. \"claude-opus-4-8\"; \"unknown\" if unsure. For analytics.",
      +  "type": "string"
      +}
    • removedOutput schema / description
      Removed value: -"Empty object on success."
  2. Changed2 schema fields changed
    • changedInput schema / properties / conversation_id / description
      Previous value: -"Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request."New value: +"The conversation_id this server returned earlier in this conversation, unchanged, including after later user messages. Omit it if you have none. Recorded for the server developer's analytics."
    • changedInput schema / properties / interview_result_id / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +"string"
  3. Changed1 schema field changed
    • changedInput schema / properties / conversation_id / description
      Previous value: -"Echo the conversation_id from the server's previous response. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it."New value: +"Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request."
  4. Changed2 schema fields changed
    • addedInput schema / properties / conversation_id
      Added value: +{
      +  "description": "Echo the conversation_id from the server's previous response. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / _mcp_instructions
      Added value: +{
      +  "description": "Server-issued metadata for this conversation.",
      +  "properties": {
      +    "conversation_id": {
      +      "description": "The server-issued conversation identifier.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  5. First observed

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well past the destructiveHint/openWorldHint annotations by spelling out the exact state changes: attempt marked failed, result reverted to draft, recruiter's decision cleared, prior answers optionally retained. It also discloses that there is no preview and that nobody — including the candidate — is notified, which is precisely the kind of side effect an agent needs before calling a destructive mutation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the purpose and the outcome chain, and every sentence carries information. It is dense to the point of being run-on, and the closing 'Every argument in full, with examples: get_tool_reference' is boilerplate that could be trimmed, but nothing is genuinely wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a destructive, open-world mutation this covers permissions, ID provenance, durable side effects, notification behavior, and the sibling that controls attempt counts; with an output schema present, return values need not be described. An agent has everything required to call it correctly or hand off to the right alternative.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline would be 3, but the description adds real semantic value for interview_result_id: which source tool supplies it and the subtle distinction between a single-stage row's `id` and a multi-stage row's `interview_result_id`. The analytics-only llm_model and conversation_id fields are left to the schema, which is acceptable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource up front — 'Re-open a submitted interview result so the candidate can take it again' — and the '[Results]' tag plus the explicit consequence (attempt marked failed, result back to draft) unambiguously separates it from update_interview, which only governs how many attempts the whole interview allows.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives strong routing cues: use update_interview's interview_attempts to change attempts for the entire interview, pull interview_result_id from list_interview_results, and only owners/recruiters/platform admins may call it. It stops short of naming when-not-to-use cases (e.g. an already-draft result) or the submit/withdraw counterparts, so not a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.