VenuVidya gives an assistant searchable Carnatic flute syllabus lessons, a grounded Q&A bot, and personal class journal and practice logging.
What you can do
Search and browse syllabus lessons by keyword, level or category, and fetch full lesson content
Ask the in-app RAG chatbot questions and get grounded answers with citations, in English or Kannada
List your own class journal entries and open a single class with its items and practice log
Log a practice session against an item in a class you own
When to use it
Useful for students of the Kannada/English Carnatic flute KSGMS syllabus who want an assistant to look up lessons, answer theory or practice questions, and keep track of classes and practice sessions.
Requirements
Remote streamable HTTP endpoint; no packages or environment variables declared. The journal tools (list_classes, get_class, log_practice_session) require a personal VenuVidya mcp_token, obtained from the app's API while signed in.
Before you install
The mcp_token is a personal credential passed as a tool argument; treat it as a secret. log_practice_session writes practice records into your journal. Journal tools are scoped to the account that owns the token.
Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.pradeep-anantha%2Fvenuvidya/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.
Keyword (BM25) search across all Carnatic flute lessons.
Args:
query: Natural-language question or keywords (English or Kannada).
k: Number of top results to return (1-10, default 4).
level: Optional filter — 'junior', 'senior' or 'vidwat'.
Parametersklevelqueryrequired
get_lesson
Fetch the full study content of a single lesson.
Args:
lesson_id: Lesson identifier, e.g. 'junior-theory-1-4'.
Parameterslesson_idrequired
list_lessons
List lesson metadata. Filter by level/category.
Args:
level: 'junior' | 'senior' | 'vidwat'.
category: e.g. 'theory-1', 'practical-1', etc.
Parameterslevelcategory
list_classes
List recent class journal entries (date descending) for YOUR account.
Args:
mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token
while signed in to the app. Scopes results to your journal only.
level: optional level filter.
limit: max number of classes (1-100, default 20).
Parameterslevellimitmcp_tokenrequired
get_class
Fetch a single class journal entry with its items and practice log.
Only returns it if it belongs to your account (mcp_token).
Args:
class_id: The class to fetch.
mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token.
Parametersclass_idrequiredmcp_tokenrequired
ask_venuvidya
Ask VenuVidya — the in-app RAG chatbot. Returns a grounded answer + citations.
Args:
question: Student question (2-1500 chars).
level: Optional level filter for retrieval ('junior' | 'senior' | 'vidwat').
language: 'en', 'kn' or 'auto'.
Parameterslevellanguagequestionrequired
log_practice_session
Log a practice session against a class item in YOUR journal.
Args:
class_id: Parent class id.
item_id: Item id inside the class (kriti/varna/etc.).
practiced_on: Date in YYYY-MM-DD.
mcp_token: Your personal VenuVidya token — GET /api/auth/mcp-token.
Only ever writes into a class this account owns.
duration_min: Duration in minutes.
notes: Free-text notes.
rating: Self-rating 1-5.
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Reached in the last 30 daysRequired25 pts
Auth declaredRequired10 pts
Tools listedRequired15 pts
DescriptionRequired15 pts
Logo10 pts
Documentation15 pts
Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.
LicenseNot applicable
A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.