projectx-mcp
projectx-mcp
Регистрируйте часы в ProjectX, общаясь с Claude Desktop.
"Запиши 8 часов для Ontrac на сегодня" "Заполни пропущенные дни на этой неделе для Ontrac" "За какие дни в этом месяце у меня не хватает часов?"
Установка
macOS (автоматическая)
git clone git@github.com:agustindiezdb/projectx-mcp.git
cd projectx-mcp
bash scripts/install.shСкрипт выполнит следующие действия:
Установит зависимости
Соберет проект
Автоматически настроит Claude Desktop
Создаст резервную копию вашей текущей конфигурации
Затем перезапустите Claude Desktop. Chrome откроется автоматически для входа в систему с вашей учетной записью Dualboot Google.
Это всё! Теперь вы можете попросить Claude зарегистрировать ваши часы.
Windows
git clone git@github.com:agustindiezdb/projectx-mcp.git
cd projectx-mcp
npm install
npm run buildЗатем вручную отредактируйте конфигурацию Claude Desktop:
Откройте: %APPDATA%\Claude\claude_desktop_config.json
Добавьте:
{
"mcpServers": {
"projectx": {
"command": "node",
"args": ["C:\\full\\path\\to\\projectx-mcp\\dist\\src\\server.js"]
}
}
}Замените C:\full\path\to\ на ваш фактический путь (используйте \ для путей Windows).
Затем перезапустите Claude Desktop. Chrome откроется автоматически для входа в систему.
Ручная установка
Если вы предпочитаете настраивать вручную:
Клонируйте и соберите проект:
git clone git@github.com:agustindiezdb/projectx-mcp.git cd projectx-mcp npm install npm run buildОтредактируйте конфигурацию Claude Desktop:
Откройте~/Library/Application Support/Claude/claude_desktop_config.jsonи добавьте:{ "mcpServers": { "projectx": { "command": "node", "args": ["/ABSOLUTE/PATH/TO/projectx-mcp/dist/src/server.js"] } } }Замените
/ABSOLUTE/PATH/TO/на полный путь к вашему клонированному репозиторию.Перезапустите Claude Desktop
Использование с Cursor
Cursor использует конфигурацию MCP для каждого проекта. Создайте .cursor/mcp.json в корне вашего проекта:
{
"$schema": "https://json.schemastore.org/mcp.json",
"mcpServers": {
"projectx": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/projectx-mcp/dist/src/server.js"]
}
}
}Замените /ABSOLUTE/PATH/TO/ на полный путь к вашему клонированному репозиторию.
Затем перезапустите Cursor. При первом запуске Chrome откроется для входа в систему.
Использование
Просто общайтесь с Claude естественным языком:
Log 8 hours of Ontrac for today with description "Sprint planning"Check my entries for this week and fill the missing days with 8h of OntracDelete yesterday's entry and log 4h of Internal — AdministrativeWhich days am I missing hours for April?Доступные инструменты
Инструмент | Описание |
| Просмотр записей за диапазон дат |
| Список доступных проектов |
| Создание записи |
| Удаление записи по ID |
Если вход не удался или сессия истекла
Просто перезапустите Claude Desktop. Chrome снова откроется для входа в систему.
Полезные скрипты
Вы также можете использовать API напрямую без Claude Desktop:
# Test the API (creates and deletes a test entry)
npm run test:entry
# Check which days you're missing hours in April
npx ts-node scripts/check-april.ts
# Manually refresh your session (if expired)
npm run save-sessionДля разработчиков
Архитектура
Claude Desktop → MCP Server (stdio) → fetch() + _interslice_session cookie → ProjectX APIФайл cookie сессии хранится по адресу ~/Library/Application Support/projectx-mcp/auth.json (игнорируется git).
При запуске, если действительная сессия не найдена, Chrome открывается автоматически для входа через Playwright.
Режим разработки
npm run devЭто запускает сервер с помощью ts-node для быстрой разработки (шаг сборки не требуется).
Как это работает
Аутентификация: Использует Playwright для открытия Chrome и автоматического обнаружения успешного входа путем опроса
/api/v1/current_userСохранение сессии: Сохраняет файлы cookie в
auth.jsonс помощьюstorageState()в PlaywrightAPI-клиент: Считывает cookie
_interslice_sessionи выполняет аутентифицированные запросы к ProjectXПротокол MCP: Предоставляет 4 инструмента для Claude Desktop через транспорт stdio
Конфигурация Claude Desktop (вручную)
Если вы предпочитаете редактировать вручную:
{
"mcpServers": {
"projectx": {
"command": "node",
"args": ["/path/to/projectx-mcp/dist/src/server.js"]
}
}
}Устранение неполадок
Сессия истекла → перезапустите Claude Desktop, Chrome откроется автоматически
Chrome не найден → установите Google Chrome (должен быть в системном PATH)
Проект не найден → попросите Claude выполнить
get_projects, чтобы увидеть точные названияПроблемы с путями (macOS/Linux) → используйте абсолютные пути, а не
~или относительные путиПроблемы с путями (Windows) → используйте
\(двойной обратный слэш) в путях JSON, напримерC:\Users\...Расположение файла аутентификации:
macOS:
~/Library/Application Support/projectx-mcp/auth.jsonWindows:
%APPDATA%\projectx-mcp\auth.jsonLinux:
~/.config/projectx-mcp/auth.json
Требования
ОС: macOS, Windows или Linux
Node.js: 20+
Браузер: Google Chrome (требуется для автоматического входа)
Claude Desktop
Учетная запись Dualboot Google
Лицензия
Внутренний инструмент для Dualboot Partners.
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage projects, tasks, time tracking, and team collaboration through natural language.
Track time, log expenses, manage projects and draft or send Keito invoices from AI agents.
Manage Avaza projects, tasks, timesheets, expenses, invoices, and scheduling from AI assistants.
Track time on usetimebook.com - start/stop timers, log entries, list projects/clients.