Commit 70a8257
chore: upgrade MCP SDK to v1.27.1 (security fix) (#29)
* fix: create per-session McpServer instance in HTTP mode
The singleton McpServer was shared across all HTTP sessions, causing
"Already connected to a transport" crash on the second connection.
Each session now gets its own McpServer instance with tools replayed
from stored config. Stdio mode unchanged (1:1 by nature).
Closes #27
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: upgrade MCP SDK to v1.27.1 and add smoke tests
- Upgrade @modelcontextprotocol/sdk ^1.11.0 → ^1.27.1
- Fixes GHSA-345p-7cg4-v4c7 (cross-client response data leakage)
- Protocol.connect() now enforces single-transport-per-instance
- Upgrade zod ^3.24.2 → ^3.25.0 (now a peer dep of SDK v1.23+)
- Pin @types/express to v4 (compatible with our express v4 dep)
- Add smoke test suite (tests/smoke.test.ts):
- Session initialization
- Tool listing (all 7 tools)
- Geocode tool call (when API key provided)
- Multi-session concurrency (3 parallel sessions)
- Run: npx tsx tests/smoke.test.ts
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: add CI/CD workflows, ESLint, Prettier and npm scripts
- Add GitHub Actions CI workflow (build/lint/test on PR)
- Add GitHub Actions release workflow (E2E test + auto bump + npm publish on merge to main)
- Add ESLint 9 flat config with TypeScript and Prettier integration
- Add Prettier config matching existing code style
- Add npm scripts: test, test:e2e, lint, format, format:check
- Format all source files with Prettier
- Fix prefer-const and no-empty lint errors
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>1 parent 046b9a8 commit 70a8257
22 files changed
Lines changed: 8090 additions & 1498 deletions
File tree
- .github/workflows
- src
- core
- services
- tools/maps
- utils
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
0 commit comments