← WebMCP Directory

Tool tree

sensemaking-studio.motywang.workers.dev

Health & EducationTools verified
Website
A human-agent workspace for qualitative interview analysis.
Explore capabilities
    list_themesAnswer

    Start here. List every theme in the open analysis with its definition, inclusion and exclusion criteria, evidence counts, and participant coverage. Use the returned IDs with the other tools.

    View tool JSON
    {
      "name": "list_themes",
      "kind": "answer",
      "impl": "imperative",
      "description": "Start here. List every theme in the open analysis with its definition, inclusion and exclusion criteria, evidence counts, and participant coverage. Use the returned IDs with the other tools.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "include_archived": {
            "type": "boolean",
            "description": "Include themes archived by a merge or split."
          }
        },
        "additionalProperties": false
      }
    }
    get_current_selectionAnswer

    Inspect the excerpts and themes currently selected by the researcher on the shared qualitative analysis canvas.

    View tool JSON
    {
      "name": "get_current_selection",
      "kind": "answer",
      "impl": "imperative",
      "description": "Inspect the excerpts and themes currently selected by the researcher on the shared qualitative analysis canvas.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    search_excerptsAnswer

    Find interview excerpts by free text, theme, participant, or coding status. Use it to gather evidence before proposing an analytic change.

    View tool JSON
    {
      "name": "search_excerpts",
      "kind": "answer",
      "impl": "imperative",
      "description": "Find interview excerpts by free text, theme, participant, or coding status. Use it to gather evidence before proposing an analytic change.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Free text matched against excerpt text and its transcript context."
          },
          "theme_id": {
            "type": "string",
            "description": "Restrict to excerpts currently coded to this theme."
          },
          "participant_id": {
            "type": "string",
            "description": "Restrict to one participant, for example P04."
          },
          "status": {
            "type": "string",
            "enum": [
              "unassigned",
              "confirmed",
              "candidate",
              "boundary",
              "rejected"
            ],
            "description": "Restrict to one coding status."
          },
          "unassigned_only": {
            "type": "boolean",
            "description": "Return only excerpts with no theme membership."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum excerpts to return."
          }
        },
        "additionalProperties": false
      }
    }
    inspect_excerptAction

    Inspect an interview excerpt with participant provenance, transcript context, current theme, validation state, and analytic history.

    View tool JSON
    {
      "name": "inspect_excerpt",
      "kind": "act",
      "impl": "imperative",
      "description": "Inspect an interview excerpt with participant provenance, transcript context, current theme, validation state, and analytic history.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "excerpt_id": {
            "type": "string",
            "description": "Stable excerpt identifier, for example E193."
          }
        },
        "required": [
          "excerpt_id"
        ],
        "additionalProperties": false
      }
    }
    inspect_themeAction

    Inspect a qualitative research theme including its definition, evidence states, participant coverage, memos, exclusions, and analytic history.

    View tool JSON
    {
      "name": "inspect_theme",
      "kind": "act",
      "impl": "imperative",
      "description": "Inspect a qualitative research theme including its definition, evidence states, participant coverage, memos, exclusions, and analytic history.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "theme_id": {
            "type": "string",
            "description": "Stable semantic theme identifier."
          }
        },
        "required": [
          "theme_id"
        ],
        "additionalProperties": false
      }
    }
    find_boundary_casesAnswer

    Rank excerpts that are relevant to two candidate themes and have a small score margin. Low-relevance Neither cases are excluded.

    View tool JSON
    {
      "name": "find_boundary_cases",
      "kind": "answer",
      "impl": "imperative",
      "description": "Rank excerpts that are relevant to two candidate themes and have a small score margin. Low-relevance Neither cases are excluded.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "theme_a_id": {
            "type": "string",
            "description": "First candidate theme ID."
          },
          "theme_b_id": {
            "type": "string",
            "description": "Second candidate theme ID."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum candidates to return."
          }
        },
        "required": [
          "theme_a_id",
          "theme_b_id"
        ],
        "additionalProperties": false
      }
    }
    get_review_queueAnswer

    Read what currently awaits researcher adjudication for a theme pair, alongside the decisions the researcher has already made and how often those matched the agent ranking. There is deliberately no agent tool that decides a boundary case.

    View tool JSON
    {
      "name": "get_review_queue",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read what currently awaits researcher adjudication for a theme pair, alongside the decisions the researcher has already made and how often those matched the agent ranking. There is deliberately no agent tool that decides a boundary case.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "theme_a_id": {
            "type": "string",
            "description": "First candidate theme ID."
          },
          "theme_b_id": {
            "type": "string",
            "description": "Second candidate theme ID."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum pending cases to return."
          }
        },
        "required": [
          "theme_a_id",
          "theme_b_id"
        ],
        "additionalProperties": false
      }
    }
    get_analysis_historyAnswer

    Read the provenance log of the analysis: which decisions were made by the researcher, which by an agent, in what order, and with what stated rationale. Use it to avoid repeating or contradicting a human judgment.

    View tool JSON
    {
      "name": "get_analysis_history",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the provenance log of the analysis: which decisions were made by the researcher, which by an agent, in what order, and with what stated rationale. Use it to avoid repeating or contradicting a human judgment.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "actor": {
            "type": "string",
            "enum": [
              "human",
              "agent"
            ],
            "description": "Restrict the log to one actor."
          },
          "excerpt_id": {
            "type": "string",
            "description": "Restrict the log to one excerpt."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum events to return, newest first."
          }
        },
        "additionalProperties": false
      }
    }
    propose_boundary_casesAction

    Add ranked Agent-proposed cases to human review. This never confirms theme membership or overwrites a human decision.

    View tool JSON
    {
      "name": "propose_boundary_cases",
      "kind": "act",
      "impl": "imperative",
      "description": "Add ranked Agent-proposed cases to human review. This never confirms theme membership or overwrites a human decision.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "theme_a_id": {
            "type": "string",
            "description": "First candidate theme ID."
          },
          "theme_b_id": {
            "type": "string",
            "description": "Second candidate theme ID."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50,
            "description": "Maximum candidates to propose."
          }
        },
        "required": [
          "theme_a_id",
          "theme_b_id"
        ],
        "additionalProperties": false
      }
    }
    focus_researcher_attentionAction

    Move the researcher's selection on the shared canvas to a specific excerpt or theme so a human can look at the evidence being discussed. This changes what is on screen; it never changes the analysis.

    View tool JSON
    {
      "name": "focus_researcher_attention",
      "kind": "act",
      "impl": "imperative",
      "description": "Move the researcher's selection on the shared canvas to a specific excerpt or theme so a human can look at the evidence being discussed. This changes what is on screen; it never changes the analysis.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "excerpt_id": {
            "type": "string",
            "description": "Excerpt to select and reveal on the canvas."
          },
          "theme_id": {
            "type": "string",
            "description": "Theme to select. Defaults to the excerpt's current theme."
          }
        },
        "additionalProperties": false
      }
    }
    move_excerptAction

    Change explicit theme membership for an excerpt through the same domain command used by researcher drag actions. Use null to remove it from its current theme for boundary review.

    View tool JSON
    {
      "name": "move_excerpt",
      "kind": "act",
      "impl": "imperative",
      "description": "Change explicit theme membership for an excerpt through the same domain command used by researcher drag actions. Use null to remove it from its current theme for boundary review.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "excerpt_id": {
            "type": "string",
            "description": "Stable excerpt identifier."
          },
          "destination_theme_id": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Destination theme ID, or null to remove the excerpt from a theme."
          },
          "rationale": {
            "type": "string",
            "description": "Concise analytic reason for the change."
          },
          "trigger_event_id": {
            "type": "string",
            "description": "Optional prior event that prompted this change."
          }
        },
        "required": [
          "excerpt_id",
          "destination_theme_id"
        ],
        "additionalProperties": false
      }
    }
    create_themeAction

    Create a draft qualitative research theme with a semantic definition and optional inclusion or exclusion criteria. Agent-created themes remain proposals until human confirmation.

    View tool JSON
    {
      "name": "create_theme",
      "kind": "act",
      "impl": "imperative",
      "description": "Create a draft qualitative research theme with a semantic definition and optional inclusion or exclusion criteria. Agent-created themes remain proposals until human confirmation.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Short analytic theme name."
          },
          "description": {
            "type": "string",
            "description": "What the theme means analytically."
          },
          "inclusion_criteria": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "exclusion_criteria": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "name"
        ],
        "additionalProperties": false
      }
    }
    add_analytic_memoAction

    Attach a traceable analytic memo to an excerpt, theme, or the overall analysis.

    View tool JSON
    {
      "name": "add_analytic_memo",
      "kind": "act",
      "impl": "imperative",
      "description": "Attach a traceable analytic memo to an excerpt, theme, or the overall analysis.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "target_type": {
            "type": "string",
            "enum": [
              "excerpt",
              "theme",
              "analysis"
            ]
          },
          "target_id": {
            "type": "string"
          },
          "text": {
            "type": "string",
            "description": "Memo grounded in the available research evidence."
          }
        },
        "required": [
          "target_type",
          "target_id",
          "text"
        ],
        "additionalProperties": false
      }
    }