Twinkle HubTwinkle Hub
Sign in

📌 2026-08-17 added: ⚖️ Taiwan statute time machine — historical article text · revision history · full-text search · citation graph (935 datasets · 35,454+ rows)

View full changelog →

Semantic + keyword exam question search

tw_search_exam_questions

TW-specificMIT

**關鍵字 / Keywords**: 國考題 選擇題 exam question 高普考 律師 醫師 考古題 practice test

以自然語言 + (可選) 關鍵字過濾, 檢索國家考試**題目**級別.
320,663 questions (民國 101-114 / 西元 2012-2025).

參數:
    query: 自然語言, 例「土壤液化的計算」「公司法 董事決議責任」
    stem_contains: 題幹硬性子字串 filter (e.g. "土壤液化"),
        與 query 並用 = 過濾後對子集 semantic ranking
    其他同 tw_search_exam (paper-level), 但作用在題目 level

回傳 schema:
    {n_corpus, n_returned, query,
     hits: [{paper_id, exam_year (民國), exam_year_西元,
             exam_name, subject_name, question_no, question_type,
             stem, options{A,B,C,D}?, answer?,  similarity}, ...]}

典型用法:
    # 純 semantic
    tw_search_exam_questions("液體流動的計算")
    # keyword 過濾 + semantic ranking
    tw_search_exam_questions("計算題", stem_contains="土壤液化")
    # 含 metadata filter
    tw_search_exam_questions("董事責任", subject_contains="公司法",
                          year_from=2020, question_type="申論")

跟 tw_search_exam (paper-level) 差別:
  - tw_search_exam       回「整科目」(科目級, 1 paper = 多題)
  - tw_search_exam_questions 回「單題」(題目級, 直接看 stem/options/answer)

Input schema

{
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "stem_contains": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Stem Contains"
    },
    "exam_name_contains": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Exam Name Contains"
    },
    "year_from": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Year From"
    },
    "year_to": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Year To"
    },
    "subject_contains": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Subject Contains"
    },
    "question_type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Question Type"
    },
    "limit": {
      "default": 20,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "tw_search_exam_questionsArguments",
  "type": "object"
}

How to call

Once your Twinkle Hub MCP client is configured, your agent will see tw_search_exam_questions. Just ask it to call — example:

# Ask Claude / any MCP client:
請用 tw_search_exam_questions 處理 "…"。

# It will call:
tw_search_exam_questions(input="…")

Haven't set up a client yet?

Claude Desktop in 3 minutes — download the .mcpb and double-click, or see docs for other clients.

See user docs