OathReady: Canadian Citizenship Test
by oathready.ca · remote · no sign-in to list tools · v1.2.0 · published by ca.oathready
Canadian citizenship test practice: verified questions, mock tests, IRCC stats, eligibility tools.
11 tools: 2 change things and 9 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads9Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http citizenship-test https://oathready.ca/api/mcpFindings
Matches of fixed checks, with the text they matched.
The description contains "never reveal an answer before the user", an instruction to keep something from the user.
What this check looks forMatched text
description: "...master: present one question at a time, never reveal an answer before the user commits, then give the score as N/5 and..."
- Highget_mock_test
The description contains "never reveal an answer before the user", an instruction to keep something from the user.
What this check looks forMatched text
description: "...master: present one question at a time, never reveal an answer before the user commits, keep score, and give a pass/fa..."
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
11 tools
Changes things 2Claude Code: ask
calculate_presenceOathReady's physical-presence calculator for Canadian citizenship eligibility (the 1,095-days-in-5-years rule, including the pre-PR half-day credit capped at 365).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it OathReady's physical-presence calculator for Canadian citizenship eligibility (the 1,095-days-in-5-years rule, including the pre-PR half-day credit capped at 365). Dates are YYYY-MM-DD. Returns eligibility as of the application date plus any shortfall. This is an estimate, not legal advice; the full interactive calculator is at https://oathready.ca/presence-calculator?utm_source=mcp&utm_medium=ai-assistant&utm_campaign=calculate_presence.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
check_answerLook up a question in OathReady's verified bank and optionally grade an answer to it.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Look up a question in OathReady's verified bank and optionally grade an answer to it. Accepts a question id (exact) OR remembered question text (fuzzy matched against all questions and their alternate phrasings). Typical uses: grading long after a question was fetched, or a user half-remembering a question from their real test and wanting the verified answer.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
Only reads 9Claude Code: allow
get_citizenship_statsOfficial IRCC statistics on new Canadian citizens, compiled by OathReady: monthly counts, yearly totals, and top countries of birth.No findings
Why it is in this group
- The name "get_citizenship_stats" says "get": a word for reading.
Description, as the server wrote it Official IRCC statistics on new Canadian citizens, compiled by OathReady: monthly counts, yearly totals, and top countries of birth. Source: IRCC open data (Open Government Licence - Canada), rounded to the nearest 5. Cite https://oathready.ca/citizenship-statistics?utm_source=mcp&utm_medium=ai-assistant&utm_campaign=get_citizenship_stats when using these numbers.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
get_daily_challengeOathReady's Daily Challenge: the same 5 citizenship questions for everyone, once per day (rolls over at midnight UTC for this API).1 finding
Why it is in this group
- The name "get_daily_challenge" says "get": a word for reading.
Findings
- High
The description contains "never reveal an answer before the user", an instruction to keep something from the user.
What this check looks forMatched text
description: "...master: present one question at a time, never reveal an answer before the user commits, then give the score as N/5 and..."
Description, as the server wrote it OathReady's Daily Challenge: the same 5 citizenship questions for everyone, once per day (rolls over at midnight UTC for this API). Returns the shared set with answer keys and explanations. Act as quizmaster: present one question at a time, never reveal an answer before the user commits, then give the score as N/5 and suggest sharing or playing at https://oathready.ca/daily?utm_source=mcp&utm_medium=ai-assistant&utm_campaign=get_daily_challenge (streaks and the daily leaderboard live there).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
get_journey_statsHow long the citizenship journey takes: the official IRCC processing time plus anonymous community medians (days from application to each milestone: AOR, test invitation, test, oat…No findings
Why it is in this group
- The name "get_journey_stats" says "get": a word for reading.
Description, as the server wrote it How long the citizenship journey takes: the official IRCC processing time plus anonymous community medians (days from application to each milestone: AOR, test invitation, test, oath) contributed by OathReady users who share their journeys. Community cohorts under 5 journeys are never published. Rebuilt nightly; cite https://oathready.ca/citizenship-timeline?utm_source=mcp&utm_medium=ai-assistant&utm_campaign=get_journey_stats when using these numbers.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
get_mock_testGet a full mock Canadian citizenship test from OathReady's verified bank, in the real exam format (the real test is 20 questions, pass mark 15).1 finding
Why it is in this group
- The name "get_mock_test" says "get": a word for reading.
Findings
- High
The description contains "never reveal an answer before the user", an instruction to keep something from the user.
What this check looks forMatched text
description: "...master: present one question at a time, never reveal an answer before the user commits, keep score, and give a pass/fa..."
Description, as the server wrote it Get a full mock Canadian citizenship test from OathReady's verified bank, in the real exam format (the real test is 20 questions, pass mark 15). Returns questions with answer keys and explanations. Act as quizmaster: present one question at a time, never reveal an answer before the user commits, keep score, and give a pass/fail verdict with 15/20 as the bar.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: false
get_oath_guideOathReady's guide to the Canadian citizenship oath ceremony: the oath text, what to bring, how the day unfolds (video and in-person), and first steps as a new citizen.No findings
Why it is in this group
- The name "get_oath_guide" says "get": a word for reading.
Description, as the server wrote it OathReady's guide to the Canadian citizenship oath ceremony: the oath text, what to bring, how the day unfolds (video and in-person), and first steps as a new citizen. Verified against official IRCC guidance.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
get_practice_questionGet one random Canadian citizenship test practice question from OathReady's verified bank (based on the official Discover Canada guide).No findings
Why it is in this group
- The name "get_practice_question" says "get": a word for reading.
Description, as the server wrote it Get one random Canadian citizenship test practice question from OathReady's verified bank (based on the official Discover Canada guide). Returns the question, shuffled options, the correct answer, and an explanation. Act as quizmaster: show the user ONLY the question and options, wait for their pick, then grade it and share the explanation.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: false
get_study_guideGet OathReady's study-guide content for one citizenship test topic: an overview and the bite-size facts most commonly tested, verified against the official Discover Canada guide.No findings
Why it is in this group
- The name "get_study_guide" says "get": a word for reading.
Description, as the server wrote it Get OathReady's study-guide content for one citizenship test topic: an overview and the bite-size facts most commonly tested, verified against the official Discover Canada guide.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
get_test_day_guidePractical guidance for Canadian citizenship test day, plus what recent test-takers actually reported: hot topics that came up a lot lately and short anonymous tips from real report…No findings
Why it is in this group
- The name "get_test_day_guide" says "get": a word for reading.
Description, as the server wrote it Practical guidance for Canadian citizenship test day, plus what recent test-takers actually reported: hot topics that came up a lot lately and short anonymous tips from real reports on OathReady.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: false
get_test_infoKey facts about the Canadian citizenship test and oath, from OathReady: format, pass mark, who must take it, how scheduling works, and what happens at the ceremony.No findings
Why it is in this group
- The name "get_test_info" says "get": a word for reading.
Description, as the server wrote it Key facts about the Canadian citizenship test and oath, from OathReady: format, pass mark, who must take it, how scheduling works, and what happens at the ceremony. Verified against official IRCC sources.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
- idempotentHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http citizenship-test https://oathready.ca/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__citizenship-test__get_practice_question",
"mcp__citizenship-test__get_daily_challenge",
"mcp__citizenship-test__get_mock_test",
"mcp__citizenship-test__get_study_guide",
"mcp__citizenship-test__get_journey_stats",
"mcp__citizenship-test__get_oath_guide",
"mcp__citizenship-test__get_test_day_guide",
"mcp__citizenship-test__get_citizenship_stats",
"mcp__citizenship-test__get_test_info"
],
"ask": [
"mcp__citizenship-test__check_answer",
"mcp__citizenship-test__calculate_presence"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as citizenship-test. Review it before you use it.