Standalone MCP server for OpenProject integration with Cursor IDE
npm install mcp-openproject-standalone---
Standalone MCP-сервер для интеграции OpenProject с Cursor IDE. Работает полностью локально, без необходимости развертывания на Netlify или других облачных платформах.
Этот MCP-сервер позволяет Cursor IDE напрямую взаимодействовать с вашим экземпляром OpenProject через Model Context Protocol. Сервер работает полностью локально и не требует развертывания на облачных платформах.
После публикации пакета в npm, установите его глобально:
``bash`
npm install -g mcp-openproject-standalone
Или локально в проект:
`bash`
npm install mcp-openproject-standalone
Зависимости установятся автоматически вместе с пакетом.
Если вы клонировали репозиторий или хотите использовать локальную версию:
#### Автоматическая установка зависимостей
Зависимости устанавливаются автоматически при первом запуске MCP-сервера. Просто настройте конфигурацию MCP (см. ниже), и при первом подключении зависимости будут установлены автоматически.
#### Ручная установка зависимостей (опционально)
Если хотите установить зависимости вручную заранее:
`bash`
npm install
Примечание: Если вы планируете использовать вариант с npm link (см. ниже), то нужно сделать скрипт исполняемым:`bash`
chmod +x index.js
Если вы используете вариант с node index.js в конфигурации MCP, то этот шаг не обязателен.
Добавьте следующую конфигурацию в файл MCP Cursor (~/.cursor/mcp.json или ~/.config/cursor/mcp.json):
Используйте npx для автоматической установки и запуска пакета. Если пакет не установлен, npx автоматически скачает и запустит его:
`json`
{
"mcpServers": {
"openproject": {
"command": "npx",
"args": [
"-y",
"mcp-openproject-standalone"
],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
Преимущества:
- ✅ Автоматическая установка пакета при первом запуске
- ✅ Не требует предварительной установки
- ✅ Автоматическое обновление до последней версии
- ✅ Кэширование пакета для последующих запусков
Примечание: Флаг -y автоматически подтверждает установку пакета без запроса.
Если вы уже установили пакет глобально:
`bash`
npm install -g mcp-openproject-standalone
Тогда в конфигурации можно использовать:
`json`
{
"mcpServers": {
"openproject": {
"command": "mcp-openproject-standalone",
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
Примечание: При глобальной установке (npm install -g) команда mcp-openproject-standalone будет доступна из любого места. При локальной установке используйте полный путь к node_modules/.bin/mcp-openproject-standalone или используйте npx mcp-openproject-standalone.
#### Вариант 1: Через npm link
`bash`
npm link
Тогда в конфигурации можно использовать:
`json`
{
"mcpServers": {
"openproject": {
"command": "mcp-openproject-standalone",
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
#### Вариант 2: Прямой путь к файлу
`json`
{
"mcpServers": {
"openproject": {
"command": "node",
"args": [
"/absolute/path/to/mcp-openproject-standalone/index.js"
],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
1. list_projects - Получить список всех проектов
2. get_project - Получить детали проекта по ID
3. list_work_packages - Получить список задач в проекте
4. get_work_package - Получить детали задачи по ID
5. create_work_package - Создать новую задачу
6. update_work_package - Обновить существующую задачу
7. list_statuses - Получить список всех доступных статусов в OpenProject
8. get_available_statuses - Получить доступные статусы для конкретной задачи (workflow). Возвращает текущий статус и все статусы, которые можно установить для этой задачи
Переменные окружения можно задать двумя способами:
Добавьте секцию env в конфигурацию MCP в файле ~/.cursor/mcp.json или ~/.config/cursor/mcp.json:
`json`
{
"mcpServers": {
"openproject": {
"command": "node",
"args": ["/absolute/path/to/mcp-openproject-standalone/index.js"],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
Этот способ удобен, так как все настройки хранятся в одном месте.
Также можно задать переменные окружения в системе перед запуском:
`bash`
export OPENPROJECT_BASE_URL="https://your-openproject-instance.com"
export OPENPROJECT_API_KEY="your-api-token-here"
Поддерживаемые переменные:
- OPENPROJECT_BASE_URL или OPENPROJECT_URL - URL вашего OpenProjectOPENPROJECT_API_KEY
- или OPENPROJECT_API_TOKEN - API токен из OpenProject
После настройки вы сможете использовать в Cursor:
- "Покажи мне все проекты из OpenProject"
- "Покажи все задачи в проекте с ID 123"
- "Создай задачу в проекте 1 с названием 'Новая задача'"
- "Обнови задачу #123"
- "Покажи все доступные статусы"
- "Какие статусы можно установить для задачи #123?"
- ✅ Полностью standalone - работает локально
- ✅ Не требует развертывания на Netlify
- ✅ Поддержка чтения и записи (CRUD операции)
- ✅ Простая установка и настройка
- ✅ Полный контроль над кодом
---
Standalone MCP server for integrating OpenProject with Cursor IDE. Works completely locally, without the need to deploy on Netlify or other cloud platforms.
This MCP server allows Cursor IDE to directly interact with your OpenProject instance through the Model Context Protocol. The server runs completely locally and does not require deployment on cloud platforms.
After the package is published to npm, install it globally:
`bash`
npm install -g mcp-openproject-standalone
Or locally in a project:
`bash`
npm install mcp-openproject-standalone
Dependencies will be installed automatically with the package.
If you cloned the repository or want to use a local version:
#### Automatic dependency installation
Dependencies are installed automatically on the first run of the MCP server. Simply configure the MCP settings (see below), and dependencies will be installed automatically on first connection.
#### Manual dependency installation (Optional)
If you want to install dependencies manually in advance:
`bash`
npm install
Note: If you plan to use the npm link option (see below), you need to make the script executable:`bash`
chmod +x index.js
If you use the node index.js option in the MCP configuration, this step is not required.
Add the following configuration to the MCP Cursor file (~/.cursor/mcp.json or ~/.config/cursor/mcp.json):
Use npx for automatic installation and running of the package. If the package is not installed, npx will automatically download and run it:
`json`
{
"mcpServers": {
"openproject": {
"command": "npx",
"args": [
"-y",
"mcp-openproject-standalone"
],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
Advantages:
- ✅ Automatic package installation on first run
- ✅ No pre-installation required
- ✅ Automatic update to latest version
- ✅ Package caching for subsequent runs
Note: The -y flag automatically confirms package installation without prompting.
If you have already installed the package globally:
`bash`
npm install -g mcp-openproject-standalone
Then in the configuration you can use:
`json`
{
"mcpServers": {
"openproject": {
"command": "mcp-openproject-standalone",
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
Note: With global installation (npm install -g), the mcp-openproject-standalone command will be available from anywhere. With local installation, use the full path to node_modules/.bin/mcp-openproject-standalone or use npx mcp-openproject-standalone.
#### Option 1: Via npm link
`bash`
npm link
Then in the configuration you can use:
`json`
{
"mcpServers": {
"openproject": {
"command": "mcp-openproject-standalone",
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
#### Option 2: Direct path to file
`json`
{
"mcpServers": {
"openproject": {
"command": "node",
"args": [
"/absolute/path/to/mcp-openproject-standalone/index.js"
],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
1. list_projects - Get a list of all projects
2. get_project - Get project details by ID
3. list_work_packages - Get a list of work packages in a project
4. get_work_package - Get work package details by ID
5. create_work_package - Create a new work package
6. update_work_package - Update an existing work package
7. list_statuses - Get a list of all available statuses in OpenProject
8. get_available_statuses - Get available statuses for a specific work package (workflow). Returns the current status and all statuses that can be set for this work package
Environment variables can be set in two ways:
Add the env section to the MCP configuration in the file ~/.cursor/mcp.json or ~/.config/cursor/mcp.json:
`json`
{
"mcpServers": {
"openproject": {
"command": "node",
"args": ["/absolute/path/to/mcp-openproject-standalone/index.js"],
"env": {
"OPENPROJECT_BASE_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-token-here"
}
}
}
}
This method is convenient as all settings are stored in one place.
You can also set environment variables in the system before running:
`bash`
export OPENPROJECT_BASE_URL="https://your-openproject-instance.com"
export OPENPROJECT_API_KEY="your-api-token-here"
Supported variables:
- OPENPROJECT_BASE_URL or OPENPROJECT_URL - URL of your OpenProject instanceOPENPROJECT_API_KEY
- or OPENPROJECT_API_TOKEN` - API token from OpenProject
After configuration, you can use in Cursor:
- "Show me all projects from OpenProject"
- "Show all work packages in project with ID 123"
- "Create a work package in project 1 with title 'New Task'"
- "Update work package #123"
- "Show all available statuses"
- "What statuses can be set for work package #123?"
- ✅ Fully standalone - works locally
- ✅ No deployment on Netlify required
- ✅ Read and write support (CRUD operations)
- ✅ Simple installation and configuration
- ✅ Full control over the code