stepik-courses-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@stepik-courses-mcpSearch my Stepik courses for recursion and summarize the key lessons"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Stepik Courses Retrieval MCP
Read-only MCP-сервер: агент собирает учебный контекст из started courses Stepik (только text steps).
Сервер даёт тонкие GET-примитивы. Оркестрацию (decompose → select → fetch → gap-fill) держит host/skill, не один «толстый» tool.
Репозиторий: https://github.com/lifefucky/mcp_read_stepik
Нужен uv в PATH (MCP стартует через uvx, Python 3.11+ подтянется сам). Skill ставится отдельно и не запускает Python-сервер.
Установка в агент
Это git-marketplace репозитория, не official catalog (Cursor Marketplace / claude-plugins-official / openai-curated).
# Cursor
/add-plugin https://github.com/lifefucky/mcp_read_stepik
# либо Customize → Plugins → Import marketplace → тот же URL, затем Install plugin stepik-courses
# Claude Code
/plugin marketplace add lifefucky/mcp_read_stepik
/plugin install stepik-courses@stepik-courses
# Codex
codex plugin marketplace add lifefucky/mcp_read_stepik
# OpenCode (только skill; MCP — в вашем opencode.json)
npx skills add lifefucky/mcp_read_stepik -a opencode
# fallback: skill во все обнаруженные агенты (без MCP)
npx skills add lifefucky/mcp_read_stepikПосле установки plugin введите CLIENT_ID и CLIENT_SECRET в UI хоста (Plugins → Configure / MCP settings). Не правьте файлы проекта и не вставляйте секреты в чат.
Related MCP server: litmos-mcp
Учётные данные Stepik
Приложение OAuth, grant client-credentials. Создайте его так:
Откройте https://stepik.org/oauth2/applications/ — страница «Ваши приложения».
Нажмите «Новое приложение».
Client type:
confidential.Authorization Grant Type:
client-credentials.Остальные поля заполняются сами; сохраните приложение и скопируйте
CLIENT_ID/CLIENT_SECRET.
Справка Stepik: OAuth applications.
MCP одной командой
Пока пакет не на PyPI:
uvx --from git+https://github.com/lifefucky/mcp_read_stepik stepik-mcpПосле публикации на PyPI: uvx stepik-courses-mcp (тот же entry point).
Транспорт v1: stdio. При старте preflight проверяет /api/user-courses и завершает процесс, если started courses недоступны.
Локальный FTS-индекс: user-dir (%LOCALAPPDATA%/stepik-mcp/ или XDG stepik-mcp/) либо STEPIK_INDEX_DB. Fingerprint — STEPIK_INDEX_IDENTITY или hash CLIENT_ID, не bearer-токен.
Host config
Креды задаются полями env в UI хоста (не JSON в git). Пример формы, которую хост сохраняет у себя:
{
"mcpServers": {
"stepik-courses": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/lifefucky/mcp_read_stepik",
"stepik-mcp"
],
"env": {
"CLIENT_ID": "${CLIENT_ID}",
"CLIENT_SECRET": "${CLIENT_SECRET}"
}
}
}
}${CLIENT_ID} / ${CLIENT_SECRET} — плейсхолдеры plugin variables, не shell ${env:...}.
OpenCode: skill через npx skills add lifefucky/mcp_read_stepik -a opencode. MCP в вашем opencode.json (не в этом репозитории), те же command / args / env.
Tools
Tool | Назначение |
| started courses; fail-fast если пусто |
| sections → units → lessons; только started |
| step id / position / type / |
| text-only + metadata + |
| явное обновление локального FTS-индекса |
| weighted lexical search: |
Рекомендуемый путь: refresh_search_index → search_lessons → get_step_content. Browse-fallback: list_started_courses → get_course_structure → get_lesson_steps_meta → get_step_content.
Resources: stepik://course/{id}/outline, stepik://lesson/{id}/step/{position}, stepik://guide/retrieval.
Prompts: gather_course_context, gap_fill_pass (тонкие шаблоны; процедура в skills/stepik-course-retrieval/SKILL.md).
Ограничения v1: только started courses под текущими кредами; только text steps; course/lesson вне allowlist → отказ.
Inspector и разработка из исходников
Inspector — для локального checkout (креды в env процесса или корневой .env; перечень имён — .env.example):
HOST=127.0.0.1 npx @modelcontextprotocol/inspector@latest --web mcp_server/run_inspector.cmdLauncher: mcp_server/run_inspector.cmd (python -m mcp_server.server, preflight отключён). На Windows, если localhost уходит в IPv6, задайте $env:HOST="127.0.0.1".
Из исходников (не основной UX): pip install -e ., затем stepik-mcp или python -m mcp_server.server. Креды — env процесса (CLIENT_ID / CLIENT_SECRET или STEPIK_*), иначе fallback корневой .env.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Read-only MCP server for the OrchestKit docs: full-text search + Markdown fetch. No auth.
Read-only MCP server for public WeJob jobs, formations, and companies.
Read-only MCP server for ClassQuill, a tutoring-business-management platform.
Read-only MCP server exposing a user ORANO library to their own AI agent.
1
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceRead-only MCP server that provides Claude Desktop with access to converted Canvas course exports, including Markdown files, reports, and search tools for local course content.-
- AlicenseAqualityDmaintenanceRead-only MCP server for Litmos LMS that exposes user profiles, course results, and training completion data to AI clients.8MIT
- FlicenseNot gradedqualityAmaintenanceMCP server for authoring courses on Stepik. Provides tools for session management, project creation, course synchronization, video upload, and publishing via the Stepik API.-
- AlicenseNot gradedqualityDmaintenanceMCP server for managing Stepik courses, sections, lessons, units, and steps from any MCP-compatible client.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lifefucky/mcp_read_stepik'
If you have feedback or need assistance with the MCP directory API, please join our Discord server