Skip to main content
Glama

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.

Related MCP server: OpenProject MCP Server

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 (requires lockVersion).

    • 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 /mcp endpoint is the main MCP HTTP endpoint for Smithery and MCP clients.

  • The root / endpoint is a health check.

Running Locally

  1. Install dependencies:

    npm install
  2. Build the project:

    npm run build
  3. Start the server (dev mode):

    npm run dev
    # or for production
    npm start
  4. 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 logic

  • smithery.yaml — Smithery server configuration

  • Dockerfile — Production-ready Docker build

  • tsconfig.json — TypeScript configuration

  • package.json — Project dependencies and scripts

License

MIT


This project is maintained for use with Smithery and the Model Context Protocol. For more information, see:

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

  • Project management MCP for AI agents with safe task reads and writes.

  • MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.

  • A MCP server built for developers enabling Git based project management with project and personal…

View all MCP Connectors

Latest Blog Posts

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/jessebautista/mcp-openproject-smithery'

If you have feedback or need assistance with the MCP directory API, please join our Discord server