mcp/authorize

Начать подключение из приложения агента. PKCE S256 обязателен. Открывает существующий login?type=mcp. Verifier хранит агент.

GET navigation /mcp-auth.php?method=authorize

Параметры

НазваниеОписаниеТипОбязательный
response_typeВсегда codeСтрокаДа
client_idЗарегистрированный клиент. В пилоте: iq-academy-pilotСтрокаДа
redirect_uriCallback агента. В пилоте: http://127.0.0.1:PORT/callback или http://[::1]:PORT/callback, PORT 1024–65535. При обмене кода должен совпасть полностью.СтрокаДа
scoperead или read writeСтрокаДа
resourceВсегда https://api.iq.academy/mcp.phpСтрокаДа
stateСлучайное значение, которое создаёт и проверяет агент при возвратеСтрокаДа
code_challengeBASE64URL(SHA256(code_verifier)), без padding. Verifier остаётся у агента.СтрокаДа
code_challenge_methodВсегда S256СтрокаДа

Пример запроса

Условные значения REQUEST_ID_FROM_LOGIN_URL, IQ_SESSION_TOKEN, ONE_TIME_CODE и MCP_ACCESS_TOKEN замените своими. Пример PKCE-пары иллюстративный; агент создаёт собственную случайную пару для каждого подключения.

GET https://api.iq.academy/mcp-auth.php?method=authorize&response_type=code&client_id=iq-academy-pilot&redirect_uri=http%3A%2F%2F127.0.0.1%3A49231%2Fcallback&scope=read+write&resource=https%3A%2F%2Fapi.iq.academy%2Fmcp.php&state=RANDOM_STATE&code_challenge=E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM&code_challenge_method=S256

Результат

HTTP/1.1 302 Found
Location: https://app.iq.academy/login?type=mcp&request_id=REQUEST_ID_FROM_LOGIN_URL

Коды ошибок

КодОписание
invalid_requestНекорректные параметры или формат запроса.
server_error / temporarily_unavailableСервис временно недоступен.

Пример ошибки

{"error": "invalid_request", "error_description": "Invalid request parameters."}

Тест запроса

Доступ требует enable_mcp=yes у авторизованного пользователя и выбранного курса, а также роли владельца или администратора. Секреты не сохраняются формой. Для реального запроса используйте request_id и PKCE-параметры своего приложения агента.

Введите данные и нажмите выполнить