Skip to main content
Glama

GitLab + Jira MCP Server

by ashabbir
developers_log.md10.6 kB
# Developer Log ## Purpose Track actions taken in this repository and provide a simple template for future updates. Keep entries short and task‑oriented. ## Conventions - Format: Date — Title — <minutes> min - Include: request (if any), action taken, files touched - Template: - Date — Title — <minutes> min - User: <request> - Codex: <what was done> - Files: <added/updated> ## Log - 2025-09-18 — Initial repo scan — 3 min - User: Provided repo context and asked for contributor guide. - Codex: Listed files and read `prd.md` to tailor guidance. - Files: (read-only) - 2025-09-18 — Added AGENTS.md contributor guide — 12 min - User: “Generate a file named AGENTS.md that serves as a contributor guide.” - Codex: Created `AGENTS.md` with structure, commands, style, testing, PR, security, and architecture sections. - Files: `AGENTS.md` (added) - 2025-09-18 — Created task list — 10 min - User: “create a list of task that need to be done … save it in task_list.md” - Codex: Added `task_list.md` with grouped checklist spanning scaffolding, MCP server, adapters, CI/CD, docs, and future work. - Files: `task_list.md` (added) - 2025-09-18 — Prioritized MVP subset — 4 min - User: Approved prioritization. - Codex: Inserted “MVP Priority (P1)” section at top of `task_list.md` covering config, MCP server, adapters, handlers, scripts, README, Docker. - Files: `task_list.md` (updated) - 2025-09-18 — Created developer log — 5 min - User: “now create a developers_log.md …” - Codex: Added this log with conventions and seeded entries. - Files: `developers_log.md` (added) - 2025-09-18 — Began MVP scaffolding — 45 min - User: “Begin MVP scaffolding per task_list.md create a branch do the work commit” - Codex: Created branch `feat/mvp-scaffold`; added TypeScript project scaffolding, config loader, MCP server stub, GitLab/Jira adapters, tests, Dockerfile, README. - Files: `package.json`, `tsconfig.json`, `.eslintrc.json`, `.prettierrc`, `bin/mcp-gitlab-jira`, `src/**/*`, `tests/config.spec.ts`, `Dockerfile`, `.dockerignore`, `README.md` (added) - 2025-09-18 — Update tasks, add lint/format/test — 8 min - User: “update the log and task list … add lint format test …” - Codex: Checked off completed MVP items, added `.gitignore`, enhanced scripts (`lint:fix`, `format:check`, coverage in `npm test`). - Files: `task_list.md` (updated), `.gitignore` (added), `package.json` (updated) - 2025-09-18 — Merge to master — 2 min - User: “merge to master” - Codex: Created `master` branch at `feat/mvp-scaffold` tip (fast-forward equivalent). - Files: branch pointer update (no content changes) - 2025-09-18 — Validation and error mapping — 30 min - User: “create a branch and do validatin error mapping once done commit then merge that into master as well” - Codex: Implemented `AppError`, MCP error mapping, config validation, input validation in tool handlers, and updated adapters to throw structured errors. - Files: `src/lib/errors.ts` (added), `src/config/index.ts`, `src/tools/index.ts`, `src/adapters/gitlab.ts`, `src/adapters/jira.ts`, `src/mcp/server.ts`, `task_list.md` (updated) - 2025-09-18 — Merged validation branch into master — 2 min - User: “merge that into master as well” - Codex: Merged `feat/validation-errors` into `master` (no conflicts), updating core files and task list. - Files: `master` updated with validation/error mapping changes - 2025-09-18 — Re-evaluate tasks and next steps — 6 min - User: “update the task list .. re-evaluate next steps in task list” - Codex: Marked completed items (handlers validation, Dockerfile/ignore, README, AGENTS); added “Next Steps (P2)” for MCP transport, schemas, pagination/retry, tests, logging, and README client snippet. - Files: `task_list.md` (updated) - 2025-09-18 — Add schemas and tests — 25 min - User: “focus on test and schemas keep updating log and task list” - Codex: Introduced Zod schemas for tool inputs/outputs and added unit tests for tool input validation and error sanitization. - Files: `src/schemas/tools.ts` (added), `src/tools/index.ts` (updated), `tests/tools.validation.spec.ts` (added), `tests/errors.spec.ts` (added), `task_list.md` (updated) - 2025-09-18 — Finish P1 — 6 min - User: “finish p1” - Codex: Marked remaining P1-related items done (schemas, docs) and added MCP client config snippet to README. - Files: `task_list.md` (updated), `README.md` (updated) - 2025-09-18 — Run tests and verify — 20 min - User: “run test and verify work” (with permission to install Node locally) - Codex: Installed Node 20 via Homebrew, installed dependencies, fixed test imports and schema edge cases; all tests passing with coverage generated. - Files: `package.json` (dev deps), `src/schemas/tools.ts` (updated), tests (updated) - 2025-09-18 — MCP transport wiring — 30 min - User: “start transport wiring in a new branch, keep the log updated and task list updated, once done merge it in master” - Codex: Created branch `feat/mcp-transport`; implemented JSON-RPC over stdio with `mcp.tools.list` and `mcp.tools.call` routing to tool handlers; updated task list. - Files: `src/mcp/jsonrpc.ts` (added), `src/mcp/server.ts` (updated), `task_list.md` (updated) - 2025-09-18 — Surface schema metadata to tools.list — 15 min - User: “Surface full schema metadata (from Zod) to mcp.tools.list. in a feature branch then cimmit n merge to master update the log n tasklist as u go” - Codex: Created branch `feat/schema-metadata`; added `schemaToMeta` to derive JSON-like metadata from Zod schemas and exposed params/result meta for each tool in `mcp.tools.list`; updated task list. - Files: `src/schemas/meta.ts` (added), `src/mcp/server.ts` (updated), `task_list.md` (updated) - 2025-09-18 — Adapter robustness (pagination, timeouts, retry) — 30 min - User: “Adapter robustness: pagination, timeouts, and retry/backoff with the usual dev log feature branch n merge to master” - Codex: Implemented request helper with timeout/retries; added pagination to GitLab (via x-next-page) and Jira (startAt/maxResults) with default limit 100. - Files: `src/lib/http.ts` (added), `src/adapters/gitlab.ts` (updated), `src/adapters/jira.ts` (updated), `task_list.md` (updated) - 2025-09-18 — Structured logging with redaction — 20 min - User: “proceed to structured logging with redaction with usual flow” - Codex: Added JSON structured logger with redaction for tokens and sensitive headers; integrated into CLI, HTTP helper, and server. - Files: `src/lib/log.ts` (added), `src/cli.ts` (updated), `src/lib/http.ts` (updated), `src/mcp/server.ts` (updated), `task_list.md` (updated) - 2025-09-18 — Adapter tests + logging docs — 25 min - User: “do 1 and 2 in single feature branch and usualy flow” - Codex: Added mocked-HTTP unit tests for GitLab and Jira adapters; expanded README with Logging section and LOG_LEVEL usage. - Files: `tests/adapters.gitlab.spec.ts` (added), `tests/adapters.jira.spec.ts` (added), `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — README tool examples — 10 min - User: “proceed to add example tool calls and snippets in README with same flow” - Codex: Added JSON-RPC example calls for all tools and a shell snippet for piping a request into the server; marked README task complete. - Files: `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — Demo script and sample output — 12 min - User: “do it” (add example outputs and a quick demo script) - Codex: Added `scripts/requests.jsonl` and `scripts/run-demo.sh` to pipe requests into the server; appended sample output to README; updated task list. - Files: `scripts/requests.jsonl` (added), `scripts/run-demo.sh` (added), `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — Add Makefile — 10 min - User: “add a make file update readme as well with the same flow” - Codex: Added `Makefile` with common dev targets and documented targets in README; updated task list. - Files: `Makefile` (added), `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — Add make check target — 6 min - User: “yes” (add a “make check” target) - Codex: Added `check` target to run lint, format-check, and tests; documented in README; updated task list. - Files: `Makefile` (updated), `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — README intro and links — 8 min - User: “in read me add a description of what this project is how it was coded then link to dev log and task list” - Codex: Added concise project description, build overview, and links to developers_log.md and task_list.md at the top of README. - Files: `README.md` (updated) - 2025-09-18 — Architecture diagram — 15 min - 2025-09-18 — Tool metadata and examples — 12 min - User: “do it” (add tool metadata and surface via tools.list + README) - Codex: Added metadata definitions with descriptions/examples; exposed in mcp.tools.list and summarized in README. - Files: `src/tools/meta.ts` (added), `src/mcp/server.ts` (updated), `README.md` (updated), `task_list.md` (updated) - 2025-09-18 — Coverage for tools/handlers — 18 min - User: “yes” (proceed with coverage improvements) - Codex: Added success and output-shape error tests for tools; raised tools coverage >80% and adapters remain at 100%. - Files: `tests/tools.success.spec.ts` (added), `tests/tools.output_error.spec.ts` (added), `task_list.md` (updated) - 2025-09-18 — Makefile-first workflow — 10 min - User: “every thing should be through make” - Codex: Extended Makefile with help, list, rpc, test-watch, docker-build/run, env-check; updated README to prefer make commands. - Files: `Makefile` (updated), `README.md` (updated) - 2025-09-18 — Make targets for pushing branches — 6 min - User: “push all branches to gitlab … remote is added as github push branches” - Codex: Added Make targets to add/update a remote and push all branches/tags; documented usage in README. - Files: `Makefile` (updated), `README.md` (updated) - User: “do tht” (add an Architecture/sequence diagram) - Codex: Added Mermaid sequence diagram to README showing JSON‑RPC flow, validation/dispatch, REST calls, and logging/redaction notes; updated task list. - Files: `README.md` (updated), `task_list.md` (updated)

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/ashabbir/multi-mcp'

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