Sambodh IAS

UPSC prep: interactive quizzes, previous-year questions, daily current affairs, cited study search

Should I use this

Quality & Safety

A
Description quality
91%
Schema completeness
81%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'get_current_affairs' description lacks action verbin get_current_affairs
  • LOWTool 'get_news_card_detail' description lacks action verbin get_news_card_detail

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,527Tokens (tool definitions)
~1.5 KBTypical response size
Moderate attention impact (1.19% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "upsc-prep": {
      "url": "https://api.sambodh-ias.in/mcp"
    }
  }
}

Remote endpoints

https://api.sambodh-ias.in/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_current_affairs(days, gs_paper, category, topic, limit, ...)

Daily UPSC-relevant news distilled into NewsPulse concept cards: what happened, why it matters for Prelims/Mains, and the syllabus concepts it illustrates. Use for any 'current affairs for UPSC' request.

Input Schema

{
  "type": "object",
  "properties": {
    "days": {
      "default": 7,
      "description": "Look-back window in days",
      "maximum": 30,
      "minimum": 1,
      "title": "Days",
      "type": "integer"
    },
    "gs_paper": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by GS subject: Polity, Economy, International Relations, Environment, Science & Tech, Ethics",
      "title": "Gs Paper"
    },
    "category": {
      "anyOf": [
        {
          "enum": [
            "news",
            "editorial"
          ],
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "news = factual coverage, editorial = analysis pieces",
      "title": "Category"
    },
    "topic": {
      "anyOf": [
        {
          "maxLength": 120,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Free-text topic/syllabus filter",
      "title": "Topic"
    },
    "limit": {
      "default": 8,
      "maximum": 20,
      "minimum": 1,
      "title": "Limit",
      "type": "integer"
    },
    "language": {
      "default": "en",
      "description": "ISO code: en, hi, te, ta, or, bn, mr, pa, kn",
      "title": "Language",
      "type": "string"
    }
  },
  "title": "get_current_affairsArguments"
}
🟢get_news_card_detail(slug, language)

The full concept card behind a NewsPulse headline: bullets, Prelims & Mains relevance, concept explainers with static-syllabus links, and the source citation.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "description": "Card slug from get_current_affairs",
      "maxLength": 120,
      "title": "Slug",
      "type": "string"
    },
    "language": {
      "default": "en",
      "description": "ISO code: en, hi, te, ta, or, bn, mr, pa, kn",
      "title": "Language",
      "type": "string"
    }
  },
  "required": [
    "slug"
  ],
  "title": "get_news_card_detailArguments"
}
🟢start_practice_quiz(source, subject, year, month, num_questions, ...)

Start an MCQ quiz from Sambodh's validated free question bank. IMPORTANT: never reveal or hint at correct answers before the user has attempted the questions; grade via submit_quiz_answers.

Input Schema

{
  "type": "object",
  "properties": {
    "source": {
      "default": "mixed",
      "description": "Question pool: current_affairs (recent news MCQs), pyq (real UPSC previous-year questions), or mixed",
      "enum": [
        "current_affairs",
        "pyq",
        "mixed"
      ],
      "title": "Source",
      "type": "string"
    },
    "subject": {
      "anyOf": [
        {
          "maxLength": 60,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional subject filter, e.g. polity, history, geography, economy, environment, science_tech",
      "title": "Subject"
    },
    "year": {
      "anyOf": [
        {
          "maximum": 2026,
          "minimum": 2014,
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "PYQ year (pyq/mixed sources)",
      "title": "Year"
    },
    "month": {
      "anyOf": [
        {
          "maxLength": 20,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Current-affairs month slug, e.g. may-2026",
      "title": "Month"
    },
    "num_questions": {
      "default": 5,
      "maximum": 10,
      "minimum": 1,
      "title": "Num Questions",
      "type": "integer"
    },
    "language": {
      "default": "en",
      "description": "ISO code: en, hi, te, ta, or, bn, mr, pa, kn",
      "title": "Language",
      "type": "string"
    }
  },
  "title": "start_practice_quizArguments"
}
🟡submit_quiz_answers(quiz_id, answers)

Grade a quiz attempt server-side. Returns per-question verdicts with explanations and the overall score. Call once the user has answered (fully or partially).

Input Schema

{
  "type": "object",
  "properties": {
    "quiz_id": {
      "description": "quiz_id from start_practice_quiz",
      "maxLength": 40,
      "title": "Quiz Id",
      "type": "string"
    },
    "answers": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Map of question id → chosen option letter, e.g. {\"<qid>\": \"B\"}",
      "title": "Answers",
      "type": "object"
    }
  },
  "required": [
    "quiz_id",
    "answers"
  ],
  "title": "submit_quiz_answersArguments"
}
🟢get_pyq_sample(year, language)

Real UPSC Prelims previous-year questions with answers and explanations — the free 3-question sample per year (full year papers are on the platform). Includes the year's total validated PYQ count.

Input Schema

{
  "type": "object",
  "properties": {
    "year": {
      "description": "UPSC Prelims year",
      "maximum": 2026,
      "minimum": 2014,
      "title": "Year",
      "type": "integer"
    },
    "language": {
      "default": "en",
      "description": "ISO code: en, hi, te, ta, or, bn, mr, pa, kn",
      "title": "Language",
      "type": "string"
    }
  },
  "required": [
    "year"
  ],
  "title": "get_pyq_sampleArguments"
}
🟢list_study_topics

The catalog behind the other tools: indexed subjects/topics (for search_sambodh_knowledge and quiz subject filters), available PYQ years, published current-affairs month slugs, and NewsPulse GS-paper values. Call this first when unsure which parameter values are valid.

Input Schema

{
  "type": "object",
  "properties": {},
  "title": "list_study_topicsArguments"
}
🟢search_sambodh_knowledge(query, subject, top_k)

Semantic search over Sambodh's indexed UPSC corpus (NCERTs + standard references). Returns source-attributed passages — synthesize your answer from them and cite the sources. Use for static-syllabus questions (history, polity, geography, economy...).

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "What to look up, phrased as a topic or question",
      "maxLength": 300,
      "minLength": 3,
      "title": "Query",
      "type": "string"
    },
    "subject": {
      "anyOf": [
        {
          "maxLength": 60,
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional subject filter (see list_study_topics)",
      "title": "Subject"
    },
    "top_k": {
      "default": 5,
      "maximum": 8,
      "minimum": 1,
      "title": "Top K",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "search_sambodh_knowledgeArguments"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools