Commit Graph

4019 Commits

Author SHA1 Message Date
GitHub Actions
a1e5a9a9b1 Automatic update of packages 2026.1.26 2026-01-26 20:21:27 +00:00
Ola Hungerford
549dd025e2 Merge pull request #3242 from cliffhall/clear-timeouts-in-cleanup
Clear initialization timeout on disconnect
2026-01-24 10:47:19 -07:00
cliffhall
ae1e7a5500 Fix #3234 -
"Everything Server crashes when multiple clients reconnect"

* In index.ts
  - added a variable to hold the initialize timeout
  - store the timeout in the oninitialized handler
  - clear the timeout in the cleanup callback

* In roots.ts
  - In the catch block of syncRoots, log the error to the console via .error rather than attempting to send to the client because the most probable case here is that we don't have a connection.
2026-01-23 13:35:32 -05:00
cliffhall
9ade57133f Fix #3234 -
"Everything Server crashes when multiple clients reconnect"

* In index.ts
  - added a variable to hold the initialize timeout
  - store the timeout in the oninitialized handler
  - clear the timeout in the cleanup callback

* In roots.ts
  - In the catch block of syncRoots, log the error to the console via .error rather than attempting to send to the client because the most probable case here is that we don't have a connection.

* In simulate-research-query.ts
  - remove redundant local variable in getTask
* Everywhere else, prettier.
2026-01-23 13:26:02 -05:00
Cliff Hall
eedb060099 Merge pull request #3193 from olaservo/add-tasks-support
feat(everything): add SEP-1686 Tasks support
2026-01-22 12:44:55 -05:00
olaservo
1542b65154 fix(everything): move task to params.task and remove pollInterval from requests
- Use params.task instead of params._meta.task for task metadata
- Remove pollInterval from task requests (only available on result)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 18:39:29 -07:00
Ola Hungerford
a160653441 Apply suggestions from code review
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2026-01-21 17:55:10 -07:00
Cliff Hall
c20c017171 Merge branch 'main' into add-tasks-support 2026-01-21 12:34:08 -05:00
Koichi ITO
623aa8f459 Merge pull request #3233 from pgoslatara/actup/update-actions-1768905103
chore: Update outdated GitHub Actions versions
2026-01-22 00:50:31 +09:00
Cliff Hall
73f0c8b966 Merge branch 'main' into add-tasks-support 2026-01-20 10:29:49 -05:00
Padraic Slattery
71a59645c9 chore: Update outdated GitHub Actions versions 2026-01-20 11:31:43 +01:00
Koichi ITO
3fd7fb618a Merge pull request #3224 from modelcontextprotocol/dependabot/uv/src/fetch/uv-bca2a229f3
Bump the uv group across 3 directories with 5 updates
2026-01-20 00:32:22 +09:00
olaservo
5156cff9dc fix(everything): implement graceful HTTP elicitation degradation
Implement graceful degradation for elicitation on HTTP transport:
- STDIO: Full elicitation works via sendRequest
- HTTP: Catches elicitation failure, uses default interpretation
- Task completes successfully on both transports

simulate-research-query now uses try-catch around sendRequest and
includes explanatory message when elicitation is skipped on HTTP.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-18 19:19:32 -07:00
olaservo
1cda86effb docs(everything): update features.md for direct elicitation flow
Update documentation to reflect that simulate-research-query now sends
elicitation requests directly from the background task instead of using
the tasks/result side-channel approach.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 17:44:55 -07:00
olaservo
c53a0f3799 fix(everything): send elicitation directly from background task
Instead of waiting for the client to call tasks/result to trigger
elicitation, the server now sends elicitation/create directly from
the background process using sendRequest. This simplifies the flow:

- Server sends elicitation proactively when clarification is needed
- Client receives and handles it via existing elicitation handler
- Task resumes and completes after receiving the response
- Client's polling sees completed status

This approach avoids requiring the client to detect input_required
status and call tasks/result as a side-channel.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-17 17:42:26 -07:00
Ola Hungerford
6556e339cb Merge branch 'main' into add-tasks-support 2026-01-17 14:05:35 -07:00
dependabot[bot]
b906f726fa Bump the uv group across 3 directories with 5 updates
Bumps the uv group with 5 updates in the /src/fetch directory:

| Package | From | To |
| --- | --- | --- |
| [mcp](https://github.com/modelcontextprotocol/python-sdk) | `1.2.0` | `1.23.0` |
| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.4` |
| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |
| [starlette](https://github.com/Kludex/starlette) | `0.41.2` | `0.49.1` |
| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.6.3` |

Bumps the uv group with 3 updates in the /src/git directory: [mcp](https://github.com/modelcontextprotocol/python-sdk), [h11](https://github.com/python-hyper/h11) and [starlette](https://github.com/Kludex/starlette).
Bumps the uv group with 2 updates in the /src/time directory: [h11](https://github.com/python-hyper/h11) and [starlette](https://github.com/Kludex/starlette).


Updates `mcp` from 1.2.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `requests` from 2.32.3 to 2.32.4
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.32.3...v2.32.4)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.2 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `urllib3` from 2.2.3 to 2.6.3
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.2.3...2.6.3)

Updates `mcp` from 1.2.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.2 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `mcp` from 1.2.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.2 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `mcp` from 1.1.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `mcp` from 1.1.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `mcp` from 1.1.0 to 1.23.0
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](https://github.com/modelcontextprotocol/python-sdk/compare/v1.2.0...v1.23.0)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

Updates `h11` from 0.14.0 to 0.16.0
- [Commits](https://github.com/python-hyper/h11/compare/v0.14.0...v0.16.0)

Updates `starlette` from 0.41.3 to 0.49.1
- [Release notes](https://github.com/Kludex/starlette/releases)
- [Changelog](https://github.com/Kludex/starlette/blob/main/docs/release-notes.md)
- [Commits](https://github.com/Kludex/starlette/compare/0.41.2...0.49.1)

---
updated-dependencies:
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: requests
  dependency-version: 2.32.4
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: urllib3
  dependency-version: 2.6.3
  dependency-type: indirect
  dependency-group: uv
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: mcp
  dependency-version: 1.23.0
  dependency-type: direct:production
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
- dependency-name: h11
  dependency-version: 0.16.0
  dependency-type: indirect
  dependency-group: uv
- dependency-name: starlette
  dependency-version: 0.49.1
  dependency-type: indirect
  dependency-group: uv
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-17 18:03:32 +00:00
Ola Hungerford
55a3056a04 Merge pull request #3222 from koic/fix_time_mcp_erro_constructor
fix(time): Fix `McpError` constructor usage in time server
2026-01-17 11:00:33 -07:00
Koichi ITO
9c9813d9dc fix(time): Fix McpError constructor usage in time server
Fixes CI failures in PR #3220.

PR #3220 updated `mcp` library from 1.0.0 to 1.23.0, which caused test
failures due to a breaking change in `McpError` constructor API.

The `McpError` constructor now expects an `ErrorData` object instead of
a plain string message. This commit fixes the usage in `get_zoneinfo()`
function to use `ErrorData(code=INVALID_PARAMS, message=...)`.

```console
Error before fix:
  AttributeError: 'str' object has no attribute 'message'
```

Also updates `mcp` dependency to >=1.23.0 in pyproject.toml to ensure
compatibility with the new API.
2026-01-17 23:12:04 +09:00
Koichi ITO
f1eedf2b7e Merge pull request #3216 from modelcontextprotocol/dependabot/npm_and_yarn/npm_and_yarn-aabe4e74ca
Bump diff from 5.2.0 to 8.0.3 in the npm_and_yarn group across 1 directory
2026-01-17 08:24:59 +09:00
dependabot[bot]
3d6c7c1391 Bump diff in the npm_and_yarn group across 1 directory
Bumps the npm_and_yarn group with 1 update in the / directory: [diff](https://github.com/kpdecker/jsdiff).


Updates `diff` from 5.2.0 to 8.0.3
- [Changelog](https://github.com/kpdecker/jsdiff/blob/master/release-notes.md)
- [Commits](https://github.com/kpdecker/jsdiff/compare/v5.2.0...v8.0.3)

---
updated-dependencies:
- dependency-name: diff
  dependency-version: 8.0.3
  dependency-type: direct:production
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-14 22:23:10 +00:00
David Soria Parra
72e11113ed Merge pull request #3213 from SashankMeka1/kg-type-loading-fix
remove type from loading
2026-01-14 17:15:29 +00:00
Sashank Meka
8af50b9418 remove type from loading 2026-01-13 22:02:20 -05:00
Ola Hungerford
861c11b786 Merge pull request #3200 from cliffhall/roots-is-optional
Everything server - Fix error when referring to roots
2026-01-10 18:26:12 -07:00
cliffhall
677f40a38f In roots.ts, clientCapabilites.roots and response.roots are optional.
Fixes #2818
2026-01-10 17:40:58 -05:00
cliffhall
7300631a5c In roots.ts, clientCapabilites.roots and response.roots are optional.
Fixes #2818
2026-01-10 17:32:20 -05:00
olaservo
9d863fb7e6 feat: add async sampling and elicitation tools
Add tools that demonstrate bidirectional MCP tasks where the server
sends requests to the client for async execution:

- trigger-sampling-request-async: Send sampling request with task
  params, client creates task and executes LLM call in background,
  server polls for completion and retrieves result

- trigger-elicitation-request-async: Same pattern for user input,
  useful when user may take time to fill out forms

Both tools:
- Check client capabilities (tasks.requests.sampling/elicitation)
- Accept both CreateTaskResult and direct result responses
- Poll tasks/get for status updates
- Fetch final result via tasks/result

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 09:14:30 -07:00
olaservo
0208e93f85 feat(everything): add SEP-1686 Tasks support
- Add tasks capability with list, cancel, and requests.tools.call
- Add InMemoryTaskStore and InMemoryTaskMessageQueue from SDK experimental
- Add simulate-research-query tool demonstrating task lifecycle
- Task demonstrates working -> input_required -> completed status flow
- Uses elicitation for ambiguous queries when client supports it

Closes #3037

🦉 Generated with [Claude Code](https://claude.ai/code)
2026-01-09 06:48:53 -07:00
Ola Hungerford
9691b958ec Merge pull request #3189 from modelcontextprotocol/dependabot/npm_and_yarn/npm_and_yarn-1719578bf6
Bump @modelcontextprotocol/sdk from 1.24.0 to 1.25.2 in the npm_and_yarn group across 1 directory
2026-01-07 11:18:17 -07:00
dependabot[bot]
737ce98e4a Bump @modelcontextprotocol/sdk
Bumps the npm_and_yarn group with 1 update in the / directory: [@modelcontextprotocol/sdk](https://github.com/modelcontextprotocol/typescript-sdk).


Updates `@modelcontextprotocol/sdk` from 1.24.0 to 1.25.2
- [Release notes](https://github.com/modelcontextprotocol/typescript-sdk/releases)
- [Commits](https://github.com/modelcontextprotocol/typescript-sdk/compare/1.24.0...v1.25.2)

---
updated-dependencies:
- dependency-name: "@modelcontextprotocol/sdk"
  dependency-version: 1.25.2
  dependency-type: direct:production
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-07 16:49:05 +00:00
Adam Jones
37b2926d2f Fix YAML syntax error in readme-pr-check workflow
The template literal body had no indentation, which broke YAML's
block literal parsing. Use array.join('\n') instead.
2026-01-06 14:38:04 +00:00
Ola Hungerford
425869346f Merge pull request #3184 from modelcontextprotocol/adamj/readme-pr-check
Add workflow to handle README-only PRs
2026-01-05 21:33:32 -07:00
Adam Jones
dca1e7ed6f Add workflow to handle README-only PRs
Adds a GitHub Actions workflow that:
- Detects PRs that only modify README.md
- Comments explaining we no longer accept new server additions
- Directs contributors to the MCP registry instead
- Allows updates/removals via /i-promise-this-is-not-a-new-server
- Uses labels (readme: pending / readme: ready for review) for filtering
- Minimizes bot comment after confirmation to reduce clutter

Claude-Generated-By: Claude Code (cli/claude-opus-4-5=100%)
Claude-Steers: 10
Claude-Permission-Prompts: 0
Claude-Escapes: 0
2026-01-05 18:53:30 +00:00
tomonacci
1ae217d74d Remove only trailing slashes (#3183) 2026-01-05 18:42:10 +00:00
Ola Hungerford
862e717ff7 Merge pull request #3164 from 0dd/fix-git-add-validation
Add Path validation
2026-01-04 13:18:50 -07:00
Aonan Guan
3827fd00b3 Merge remote-tracking branch 'origin/fix-git-add-validation' into fix-git-add-validation
# Conflicts:
#	src/git/src/mcp_server_git/server.py
2025-12-29 16:05:35 -08:00
Aonan Guan
db96050800 git: improve file path validation in add operation
Use Git CLI directly instead of GitPython index API to ensure proper
path validation and prevent option injection. The '--' separator ensures
file paths starting with '-' are handled correctly.
2025-12-29 16:04:31 -08:00
Aonan Guan
3269185eb7 git: improve file path validation in add operation
Add validation to ensure file paths are within repository boundaries
before staging. This prevents potential issues with relative paths
and improves overall robustness of the git_add function.
2025-12-29 15:33:42 -08:00
Cliff Hall
dcb47d2d94 Merge pull request #3121 from cliffhall/new-everything-server
New everything server
2025-12-19 12:39:55 -05:00
cliffhall
44faf3a200 Remove console log statements 2025-12-19 10:18:55 -05:00
Cliff Hall
53cc385d4e Update src/everything/AGENTS.md
Co-authored-by: adam jones <domdomegg+git@gmail.com>
2025-12-18 15:03:44 -05:00
Cliff Hall
5fb7a71083 Merge branch 'main' into new-everything-server 2025-12-18 11:46:12 -05:00
Paul Carleton
c7d60d635a fix: use --frozen instead of --locked in release workflow (#3140)
* fix: regenerate uv.lock after version bump in release script

When the release script bumps the version in pyproject.toml, it needs
to also regenerate the uv.lock file. Otherwise the lockfile becomes
out of sync and `uv sync --locked` fails in CI with:
"The lockfile at uv.lock needs to be updated"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: use --frozen instead of --locked in release workflow

The release script bumps the version in pyproject.toml, which causes
the lockfile to be out of sync (uv includes the package's own version
in the lockfile). Using --frozen skips the lockfile freshness check
while still using pinned dependency versions.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-18 16:25:49 +00:00
Paul Carleton
bd858d6745 fix: add contents write permission to update-packages job (#3138)
The update-packages job needs to push tags to the repository but was
missing the required `permissions: contents: write`. This caused the
workflow to fail with a 403 error when trying to push the version tag.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-18 14:17:16 +00:00
Felix Weinberger
4750df40c7 Merge pull request #3139 from modelcontextprotocol/fix-git-server-pyright-errors
fix(git): import BadName directly to fix pyright errors
2025-12-18 15:03:02 +01:00
Paul Carleton
88320daffa fix(git): import BadName directly to fix pyright errors
Import `BadName` from `git.exc` directly instead of accessing it via
`git.exc.BadName`, which pyright doesn't recognize as a valid attribute
access on the `git` module.

This fixes the pyright CI failures introduced by the recent security
patches (GHSA merges).

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-18 13:22:52 +00:00
cliffhall
17aaa455bb Sync roots at startup. This was deferred to list_roots tool is used, but I'm putting it back.
* In server/roots.ts
  - Updated function doc
2025-12-17 17:49:35 -05:00
cliffhall
f8933ec3e6 Sync roots at startup. This was deferred to list_roots tool is used, but I'm putting it back.
The syncRoots call should be idempotent, requesting roots if they haven't been yet for the session, but always retuning the cached roots otherwise. That could be deferred but setting the handler for roots_list changed note should not.

* In server/roots.ts
  - only set the notification handler and call for initial roots list if the roots aren't already cached for this client.

* In server/index.ts
  - in the oninitialized handler
    - get the sessionId from the transport
    - set a 350ms timeout to call syncRoots with the server and sessionId
      - this delay cause it to run after the `notifications/initialized` handler finishes, otherwise, the request gets lost.

* All other changes attributable to prettier
2025-12-17 17:46:24 -05:00
Cliff Hall
17a2be2320 Merge branch 'main' into new-everything-server 2025-12-17 16:02:56 -05:00
Jenn Newton
a37158bc15 Merge commit from fork
Validate that repo_path arguments in tool calls are within the
configured --repository path when the --repository flag is set.

The fix:
- Adds validate_repo_path() that resolves paths and checks
  containment using Path.relative_to()
- Resolves symlinks before comparison
- Maintains backward compatibility when --repository is not set

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Paul Carleton <paulc@anthropic.com>
2025-12-17 16:04:30 +00:00