proctor — MCP-сервер для Claude Code: экзамены для MCP-серверов
Гоняет Proctor-экзамены против MCP-серверов: запускает проверки, хранит результаты, управляет машинами Fly.io. Внутренний инструмент PulseMCP.
claude mcp add --env PROCTOR_API_KEY=<PROCTOR_API_KEY> --env PROCTOR_API_URL=<PROCTOR_API_URL> --env TOOL_GROUPS=<TOOL_GROUPS> --transport stdio proctor -- npx -y proctor-mcp-serverЧто делает proctor
Сервер даёт агенту пять инструментов. get_proctor_metadata показывает доступные рантаймы и экзамены, run_exam запускает экзамен против MCP-сервера и стримит ход выполнения в NDJSON. get_machines перечисляет активные машины Fly.io, cancel_exam останавливает зависший прогон, destroy_machine удаляет машину.
Инструменты разбиты на группы exams и machines, у каждой есть вариант _readonly с доступом только на чтение. Переменная TOOL_GROUPS задаёт список включённых групп через запятую, по умолчанию активны все: exams,machines.
Без PROCTOR_API_KEY сервер к API не подключится, а публично этот ключ не выдают: исходники открыты, но работают они только с доступом команды PulseMCP. Адрес API задаёт PROCTOR_API_URL, по умолчанию https://admin.pulsemcp.com. Запуск идёт через npx, поэтому нужен Node.
Какие задачи решает
- прогнать экзамен против MCP-сервера и посмотреть ход в реальном времени
- сравнить результаты повторных прогонов и поймать регрессию
- посмотреть, какие рантаймы и экзамены доступны сейчас
- погасить зависший прогон, не трогая машину целиком
- убрать лишние машины Fly.io после тестов
Примеры запросов агенту
- Какие экзамены можно прогнать через Proctor?
- Запусти
run_examпротив моего MCP-сервера и покажи логи по ходу - Отмени текущий экзамен и удали машину
machine-abc123
Как установить proctor
Командой платформы
claude mcp add --env PROCTOR_API_KEY=<PROCTOR_API_KEY> --env PROCTOR_API_URL=<PROCTOR_API_URL> --env TOOL_GROUPS=<TOOL_GROUPS> --transport stdio proctor -- npx -y proctor-mcp-serverВместо <…> подставьте свои значения
Командой платформы
codex mcp add proctor --env PROCTOR_API_KEY=<PROCTOR_API_KEY> --env PROCTOR_API_URL=<PROCTOR_API_URL> --env TOOL_GROUPS=<TOOL_GROUPS> -- npx -y proctor-mcp-serverВместо <…> подставьте свои значения
Файл настроек
{
"mcpServers": {
"proctor": {
"command": "npx",
"args": [
"-y",
"proctor-mcp-server"
],
"env": {
"PROCTOR_API_KEY": "<PROCTOR_API_KEY>",
"PROCTOR_API_URL": "<PROCTOR_API_URL>",
"TOOL_GROUPS": "<TOOL_GROUPS>"
}
}
}
}Вместо <…> подставьте свои значения
Файл настроек
{
"servers": {
"proctor": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"proctor-mcp-server"
],
"env": {
"PROCTOR_API_KEY": "<PROCTOR_API_KEY>",
"PROCTOR_API_URL": "<PROCTOR_API_URL>",
"TOOL_GROUPS": "<TOOL_GROUPS>"
}
}
}
}Вместо <…> подставьте свои значения
Командой платформы
gemini mcp add -e PROCTOR_API_KEY=<PROCTOR_API_KEY> -e PROCTOR_API_URL=<PROCTOR_API_URL> -e TOOL_GROUPS=<TOOL_GROUPS> proctor npx -y proctor-mcp-serverВместо <…> подставьте свои значения
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о proctor
Как установить proctor в Claude Code?
Выполните claude mcp add proctor -e PROCTOR_API_KEY=<PROCTOR_API_KEY> -- npx -y proctor-mcp-server. Если нужны адрес API и список групп, используйте второй вариант: `claude mcp add --env PROCTOR_API_KEY=<PROCTOR_API_KEY> --env PROCTOR_API_URL=<PROCTOR_API_URL> --env TOOL_GROUPS=<TOOL_GROUPS> --transport stdio proctor -- npx -y proctor-mcp-server`.
Что делает proctor?
Запускает Proctor-экзамены против MCP-серверов, сохраняет результаты для сравнения, а также показывает и удаляет машины Fly.io, на которых идут прогоны.
Можно ли дать серверу доступ только на чтение?
Да. Поставьте в TOOL_GROUPS варианты с суффиксом _readonly, например exams_readonly,machines_readonly, и запись станет недоступна.