MCP Server for OpenProject (Smithery Edition)
This project provides a Model Context Protocol (MCP) server for OpenProject, designed for deployment and use with Smithery. It exposes a set of tools for interacting with a self-hosted OpenProject instance, and is compatible with Smithery’s HTTP transport and tool listing requirements.
About this MCP Server
- Built with TypeScript and Node.js using the @modelcontextprotocol/typescript-sdk.
- Exposes OpenProject CRUD tools for projects and tasks (work packages).
- Designed for easy deployment to Smithery, with Docker support and a minimal, production-ready structure.
- Supports local development and testing with MCP Inspector and Smithery tools.
Implemented OpenProject Tools
- Projects:
openproject-create-project: Creates a new project.openproject-get-project: Retrieves a specific project by ID.openproject-list-projects: Lists all projects (supports pagination).openproject-update-project: Updates an existing project’s details.openproject-delete-project: Deletes a project.
- Tasks (Work Packages):
openproject-create-task: Creates a new task within a project.openproject-get-task: Retrieves a specific task by ID.openproject-list-tasks: Lists tasks, optionally filtered by project ID (supports pagination).openproject-update-task: Updates an existing task (requireslockVersion).openproject-delete-task: Deletes a task.
Prerequisites
- Node.js (v18 or later recommended)
- npm
- An OpenProject instance accessible via URL
- An OpenProject API Key
- (Optional) Docker for containerized builds
HTTP Entrypoint and Local Development
This MCP server now uses Express and the official MCP Streamable HTTP transport. The server is accessible at http://localhost:8000/mcp after running npm run dev or npm start.
Entrypoint code (see src/index.ts):
import express from "express";
import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
const app = express();
app.use(express.json());
const mcpServer = setupMCPServer();
const transport = new StreamableHTTPServerTransport({ sessionIdGenerator: undefined });
mcpServer.connect(transport);
app.all("/mcp", (req, res) => {
transport.handleRequest(req, res, req.body);
});
app.get("/", (_req, res) => res.send("MCP OpenProject server is running!"));
const PORT = process.env.PORT || 8000;
app.listen(PORT, () => {
console.log(`MCP server running on port ${PORT}`);
});
- The
/mcpendpoint is the main MCP HTTP endpoint for Smithery and MCP clients. - The root
/endpoint is a health check.
Running Locally
- Install dependencies:
npm install - Build the project:
npm run build - Start the server (dev mode):
npm run dev # or for production npm start - Access the MCP endpoint at http://localhost:8000/mcp
Docker Usage
Build and run as before:
docker build -t mcp-openproject-smithery .
docker run --rm -p 8000:8000 --env-file .env mcp-openproject-smithery
Smithery Deployment
This project is ready for Smithery. The /mcp endpoint is compatible with Smithery’s HTTP transport requirements.
See your live Smithery server here:
Local Testing with MCP Inspector
You can test your MCP server locally using the MCP Inspector:
npx @modelcontextprotocol/inspector npx mcp-remote@next http://localhost:8000/mcp
Open the Inspector URL (usually http://localhost:6274) in your browser to interact with your tools.
Project Structure
src/index.ts— Main MCP server logicsmithery.yaml— Smithery server configurationDockerfile— Production-ready Docker buildtsconfig.json— TypeScript configurationpackage.json— Project dependencies and scripts
License
MIT
This project is maintained for use with Smithery and the Model Context Protocol. For more information, see:
- Smithery Documentation
- Model Context Protocol
- TypeScript SDK for MCP
OpenProject Integration Server
Project Details
- jessebautista/mcp-openproject-smithery
- Last Updated: 5/25/2025
Recomended MCP Servers
c/ua is the Docker Container for Computer-Use AI Agents.
MCP Think Tank is a powerful Model Context Protocol (MCP) server designed to enhance the capabilities of AI...
🔍 Enable AI assistants to search and access medRxiv papers through a simple MCP interface.
A MCP server wrapper for Cursor 🌩️
🔥 Opensource browser using agents
azrae26.github.io
A Python-based Model Context Protocol (MCP) tool for Kubernetes clusters that exposes a comprehensive API to retrieve cluster...
This MCP server integrates ThingsPanel IoT platform with AI models like Claude, GPT, and others that support the...
Forked repo to customize into Project Management purpose.
MCP server for querying the Shodan API





