Skip to content

feat: implement server, middleware, tests, and lint config#1

Merged
dmchaledev merged 4 commits into
mainfrom
feat/server-implementation
May 19, 2026
Merged

feat: implement server, middleware, tests, and lint config#1
dmchaledev merged 4 commits into
mainfrom
feat/server-implementation

Conversation

@dmchaledev
Copy link
Copy Markdown
Contributor

Implements the full server foundation:

  • McpServer class with callTool, start, stop
  • Auth middleware (none / api-key / jwt / oauth)
  • Per-client sliding-window rate limiter
  • Structured JSON audit logger (stdout + file)
  • createMcpServer factory + defineTools helper
  • 25 Jest tests, 0 lint warnings
  • CI updated: removed continue-on-error, pinned npm install --include=dev

HailBytes Bot added 4 commits May 19, 2026 05:58
- TypeScript strict mode, ES2022, NodeNext resolution
- Package metadata, MIT license, .gitignore
- src/index.ts stub with planned public API (createMcpServer, defineTools)
- .github/workflows/ci.yml (Node 20, install/lint/test/build)
- CHANGELOG.md (Keep a Changelog), CONTRIBUTING.md (incubation notice)
- McpServer class: callTool with auth/rate-limit/audit pipeline
- AuthMiddleware: none / api-key / jwt / oauth strategies
- RateLimiter: per-client sliding-window (Map<string, number[]>)
- AuditLogger: structured JSON events to stdout or file
- createMcpServer factory, defineTools with duplicate-name guard
- Custom errors: ToolNotFoundError, AuthError, RateLimitError
- Jest: 25 tests (server.test.ts + rate-limiter.test.ts), all passing
- ESLint: @typescript-eslint/recommended, 0 warnings
- CI: removed continue-on-error, npm install --include=dev
- CHANGELOG: updated [Unreleased] section
- .github/ISSUE_TEMPLATE/bug_report.md
- .github/ISSUE_TEMPLATE/feature_request.md
- package.json: added typecheck script (tsc --noEmit)
- CI: refreshed with npm install --include=dev, cache: npm
@dmchaledev dmchaledev force-pushed the feat/server-implementation branch from 67ae791 to 31f1f65 Compare May 19, 2026 11:58
@dmchaledev dmchaledev merged commit 2bbf9e1 into main May 19, 2026
1 check passed
@dmchaledev dmchaledev deleted the feat/server-implementation branch May 19, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant