Commit Graph
34 Commits
Author SHA1 Message Date
Lucas Winther cda83e320f feat(config): support port and host options for HTTP/SSE transport 2026-09-06 21:22:50 +02:00
Lucas Winther e56bd574e2 fix(tests): skip live container tests when OPENPROJECT_API_KEY is not set 2026-09-06 21:05:36 +02:00
Lucas Winther 03a1f44517 fix: restore strict noUncheckedIndexedAccess and skip redundant docker build in CI 2026-09-06 20:54:12 +02:00
Lucas Winther 2b93ebe0a1 fix(ci): lowercase Docker image name in CI workflow and optimize Dockerfile layer creation 2026-09-06 20:48:54 +02:00
Lucas Winther 51c92ea927 ci: create GitHub Actions workflow for testing and multi-arch Docker publishing 2026-09-06 20:44:09 +02:00
Lucas Winther df2bad2f62 feat(docker): add multi-stage Dockerfile and .dockerignore 2026-09-06 20:40:27 +02:00
Lucas Winther 191e37252b test(openapi): add live container tests, update tool count assertions, and update TODO.md 2026-09-06 20:00:02 +02:00
Lucas Winther a5f4dcc2ca feat(tools): add openproject_get_openapi_spec tool definition and registration 2026-09-06 19:56:34 +02:00
Lucas Winther 69f2a95371 fix(openapi): guard suffix matching and add ambient context test 2026-09-06 19:49:13 +02:00
Lucas Winther 25fc2c9057 feat(services): implement OpenAPI specification service and in-memory caching 2026-09-06 19:40:33 +02:00
Lucas Winther 3d4a064593 refactor(server): add shutdown idempotency guard and test teardown blocks 2026-09-06 19:22:46 +02:00
Lucas Winther f1e84d281a feat(server): wire CLI entrypoint, live E2E tool calling, and mark Task 4 complete in TODO.md 2026-09-06 19:17:40 +02:00
Lucas Winther 4994b2c8db test(server): clean up read-only manifest filter assertions 2026-09-06 19:16:04 +02:00
Lucas Winther af2a8f3af8 feat(server): add read-only mode enforcement and execution guard tests 2026-09-06 19:14:25 +02:00
Lucas Winther d49e0fc881 feat(server): implement MCP server factory and transport lifecycle 2026-09-06 19:03:09 +02:00
Lucas Winther 3f618b2cf3 feat(tools): add execution wrapper support to tool registration 2026-09-06 18:52:22 +02:00
Lucas Winther 6b8045111b fix(tools): address final code review findings on validation, concurrency, and testing 2026-09-06 18:37:21 +02:00
Lucas Winther ebb47eb659 feat(tools): add live container tests and mark Task 3 complete in TODO.md 2026-09-06 18:10:00 +02:00
Lucas Winther 4eb17c2e5c feat(tools): add tool registry and barrel export 2026-09-06 18:04:50 +02:00
Lucas Winther 8cdca0fd83 feat(tools): implement metadata tools and registration 2026-09-06 18:01:43 +02:00
Lucas Winther ff05b48f81 feat(tools): implement query tools and registration 2026-09-06 17:54:42 +02:00
Lucas Winther d9176a258c feat(tools): implement work package tools and registration 2026-09-06 01:50:58 +02:00
Lucas Winther 8ccbebe34f feat(tools): implement project tools and registration 2026-09-06 01:30:17 +02:00
Lucas Winther 43eeee2e04 fix(tools): address review findings on error codes, registerTool assertions, and strict typing 2026-09-06 01:03:40 +02:00
Lucas Winther bb321bfdbe feat(tools): add common tool utilities, types, and error formatting 2026-09-06 00:48:25 +02:00
Lucas Winther a57e8ba7df fix(services): encode URI in getProject and improve test assertions 2026-09-06 00:23:58 +02:00
Lucas Winther 78ae79372c feat(services): add live container tests and mark Task 2 complete in TODO.md 2026-09-05 23:12:49 +02:00
Lucas Winther a8e4ce9bc4 feat(services): implement metadata domain service and barrel export 2026-09-05 22:57:31 +02:00
Lucas Winther 8db5a92bc5 feat(services): implement queries domain service 2026-09-05 22:49:18 +02:00
Lucas Winther b1348dbea8 feat(services): implement work packages domain service 2026-09-05 18:17:24 +02:00
Lucas Winther 6e0d3faa61 feat(services): implement projects domain service 2026-09-05 17:49:52 +02:00
Lucas Winther c50ab8989c feat(services): implement shared client resolution helper 2026-09-05 17:45:20 +02:00
Lucas Winther f5bff8a81f feat(client): implement OpenProject REST API v3 client layer and context scoping 2026-09-05 17:26:43 +02:00
Lucas Winther 003737d927 feat: initialize TypeScript MCP project with Bun
- Configure package.json and tsconfig.json using Bun bundler settings

- Install @modelcontextprotocol/sdk and zod

- Add src/index.ts entry stub and tests/smoke.test.ts using bun:test

- Update .gitignore to exclude .bun/
2026-09-05 16:35:49 +02:00