@nicola5tor/openproject-timelog
@nicola5tor/openproject-timelog
MCP-сервер (Model Context Protocol) для ведения локального журнала часов и синхронизации с OpenProject (API v3). Записывайте свою работу на естественном языке из Claude Desktop (или другого MCP-клиента), просматривайте её и загружайте в OpenProject, когда будет готово.
Транспорт: stdio
Локальное хранилище:
~/.openproject-timelog/entries.jsonКонфигурация: переменные окружения
OPENPROJECT_URLиOPENPROJECT_API_KEY
Установка
Ничего глобально устанавливать не нужно: сервер запускается через npx.
# probarlo directamente
npx @nicola5tor/openproject-timelogИли установить в проект:
npm install @nicola5tor/openproject-timelog
# o
pnpm add @nicola5tor/openproject-timelogRelated MCP server: OpenProject MCP Server
Настройка в Claude Desktop
Отредактируйте файл конфигурации (claude_desktop_config.json) и добавьте
сервер в раздел mcpServers:
{
"mcpServers": {
"openproject-timelog": {
"command": "npx",
"args": ["-y", "@nicola5tor/openproject-timelog"],
"env": {
"OPENPROJECT_URL": "https://tu-openproject.example.com",
"OPENPROJECT_API_KEY": "TU_API_KEY"
}
}
}
}Перезапустите Claude Desktop после сохранения.
Как получить API-ключ OpenProject
В OpenProject: Моя учётная запись → Access tokens → API и сгенерируйте ключ.
Сервер аутентифицируется с помощью Basic auth, используя литеральное имя
пользователя apikey и ваш ключ в качестве пароля.
Инструменты только локальные (
log_entry,list_entries,edit_entry,assign_entry,delete_entry,clear_sent) работают даже без настройки OpenProject. Инструменты запроса и загрузки требуютOPENPROJECT_URLиOPENPROJECT_API_KEY.
Инструменты
Локальный журнал
Tool | Описание |
| Записывает запись о часах. Параметры: |
| Список записей по статусу. Параметр: |
| Редактирует не отправленную запись. Параметры: |
| Назначает рабочий пакет нескольким записям. Параметры: |
| Удаляет не отправленную запись. Параметр: |
| Удаляет из локального журнала все уже отправленные ( |
Запрос OpenProject
Tool | Описание |
| Список проектов ( |
| Список задач. Необязательные параметры: |
| Список видов деятельности для записи времени ( |
| Запрос уже зарегистрированных часов. Необязательные параметры: |
Синхронизация
Tool | Описание |
| Загружает записи в OpenProject. Необязательный параметр |
* = обязательно.
Примечания по поведению
Локальные идентификаторы — UUID v4. Часы хранятся в десятичном виде (
1.5= 1ч30м) и преобразуются в длительность ISO 8601 (PT1H30M) при загрузке.projectIdзаписи, если не указан, выводится из рабочего пакета при загрузке (дополнительный вызов к OpenProject).JSON-файл записывается атомарно (временный файл + переименование), а операции сериализуются для предотвращения повреждения.
Ошибки сети / учётных данных / прав возвращаются как читаемые сообщения в ответе инструмента, не обрушивая сервер.
Примеры разговорного использования
Вы: Запиши 2 часа сегодня на исправление логина, задача 1234. Claude: (вызывает
log_entryс description="исправить логин", hours=2, workPackageId=1234)
Вы: Запиши мне 45 минут совещания, задачу потом поставлю. Claude: (
log_entrydescription="совещание", hours=0.75) — остаётся не назначенной.
Вы: Что у меня не отправлено? Claude: (
list_entriesstatus="pending")
Вы: Этим двум совещаниям поставь задачу 1234. Claude: (
assign_entryentryIds=[...], workPackageId=1234)
Вы: Какие есть виды деятельности? Поставь "Development" всем и загрузи. Claude: (
get_activities→edit_entry/assignдля activityId →upload_entries)
Вы: Очисти то, что уже загружено. Claude: (
clear_sent)
Разработка
npm install # instala deps y compila (prepare -> build)
npm run build # compila TypeScript a dist/
npm start # ejecuta dist/index.jsСтруктура:
openproject-timelog/
├── src/
│ ├── index.ts # entry point, setup MCP y registro de tools
│ ├── store.ts # CRUD bitácora local (JSON atómico)
│ ├── openproject.ts # cliente API OpenProject v3
│ └── types.ts # interfaces/types
├── package.json
├── tsconfig.json
└── README.mdЛицензия
MIT
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 Servers
- AlicenseAqualityCmaintenanceAn MCP server for Productive.io that enables users to log time, inspect projects, and manage time entries using natural language commands. It features fuzzy project matching, local caching, and remembers default services per project for streamlined time tracking.14MIT
- FlicenseNot gradedqualityDmaintenanceA comprehensive MCP server for integrating with OpenProject API, enabling AI assistants to manage projects, work packages, time tracking, and users.12
- FlicenseNot gradedqualityBmaintenanceAn MCP server that enables AI assistants to interact with OpenProject, listing projects and work packages and managing resources through natural language.
- FlicenseNot gradedqualityDmaintenanceAn MCP server that connects Claude Desktop to your OpenProject instance, allowing you to manage projects, tasks, and time entries through natural language.
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
A MCP server built for developers enabling Git based project management with project and personal…
MCP Server for Slima - AI Writing IDE for Novel Authors with AI Beta Reader.
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/NicoLa5Tor/openMcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server