Commit Graph

667 Commits

Author SHA1 Message Date
Cliff Hall
c519dbbc02 Merge branch 'main' into security/git-server-optimization 2025-09-24 10:02:28 -04:00
Aonan Guan
6382f7846d docs: update README to reflect removed initialization functionality 2025-09-23 21:31:26 -07:00
Aonan Guan
eac56e7bcd refactor: remove redundant initialization functionality 2025-09-23 20:59:54 -07:00
adam jones
28427d8cd1 Fix time server to default to UTC when tzinfo is unavailable (#2738)
When get_localzone_name() returns None, the server now defaults to UTC
instead of raising an error. This makes the server more robust in
environments where the local timezone cannot be determined.
2025-09-22 21:09:58 -07:00
Cliff Hall
f8c05004d0 Open CORS for any origin to allow direct browser connection (#2725)
* * In src/everything/sse.ts
  - import cors
  - use cors with config allowing any origin + GET/POST
* In src/everything/streamableHttp.ts
  - import cors
    - use cors with config allowing any origin + GET/POST/DELETE, and exposed protocol headers for client to read
* In package.json and package-lock.json
  - add cors as a dependency

* * In package.json and package-lock.json
  - add @types/cors as dev dependency

* Add caution note for CORS origin wildcard usage

Added caution note for using '*' in CORS origin.

* * In streamableHttp.ts
  - remove remove unintentional console log

* * In streamableHttp.ts
  - add comment about why opening cors for all routes

* * In sse.ts
  - add comment about using * with caution in production for cors

* * In sse.ts
  - indent on cors config

---------

Co-authored-by: shaun smith <1936278+evalstate@users.noreply.github.com>
2025-09-19 01:28:41 +01:00
Aonan Guan
52ab84cd63 Improve memory server schema validation (#2726)
- Add explicit property filtering in saveGraph method
- Add additionalProperties constraints to input schemas
2025-09-18 15:11:12 +01:00
多吃点
097fdab463 docs: Fix duplicate directory_tree tool entry in API documentation 2025-09-13 13:00:02 +08:00
Cliff Hall
c3093739ca Let Everything's STDIO server use SDK's automatic log level handling (#2706)
- bump TS SDK to 1.18.0
* In src/everything/stdio.ts
  - remove logging related imports
  - remove custom log-level handling, now handled automatically by the SDK
* In src/everything/everything.ts
  - remove console.log of sessionId
2025-09-11 17:31:49 -07:00
evalstate
4c91d59d16 direct long running tool progress notifications to correct stream 2025-09-03 11:03:06 +02:00
Ola Hungerford
e322daf123 Merge pull request #2669 from cliffhall/auto-log-level-support-in-everything-server
Everything server - fix regression + auto log level handling support
2025-09-02 22:05:12 -07:00
cliffhall
97c6408f04 * in .gitignore
- add .idea/ for Jetbrains IDEs
* in everything.ts
  - remove import of SetLevelRequestSchema
  - remove logLevel var
  - add sessionId var
  - in startNotificationIntervals function
    - add optional sid argument
    - set sessionId to sid
    - define messages to be sent, adding sessionId if present
  - remove setRequestHandler call for SetLevelRequestSchema
  - replace server.notification calls that sent "notifications/message" objects with calls to server.sendLoggingMessage, passing just the parameters and sessionId.
* In package.json & package-lock.json
  - bump TS SDK version to 1.17.5
* In sse.ts, pass transport.sessionId to startNotificationIntervals call
* In stdio.ts
  - destructure startNotificationIntervals from createServer call
  - implement custom logging request handler and server.sendLoggingMessage implementation, as a
  workaround for the fact that the SDK's automatic log level handling currently only tracks requested log level by session id. This will be fixed in a followup PR for the SDK
  - call the startNotificationIntervals function after connecting the transport to the server
* In streamableHttp.ts
  - destructure startNotificationIntervals from createServer call
  - call startNotificationIntervals passing the transport.sessionId after connecting the transport to the server
2025-09-02 17:18:11 -04:00
Ola Hungerford
38de94b7ad fix: update temperature argument type from number to string in everything server docs (#2610)
Fixes issue #474 - documentation mismatch where temperature was documented as (number) but TypeScript SDK only accepts string arguments via z.record(z.string())

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
2025-08-29 12:16:50 +01:00
cliffhall
a32f15750d Suppress startElicitation tool if client does not advertise support for elicitation capability
* In everything.ts
  - remove inappropriate elicitation entry from server capabilities (this is a client capability)
  - When creating tool list, only add `ToolName.ELICITATION` definition to tools array if `clientCapabilities` includes `elicitation`

* In package.json / package-lock.json
  - bump @modelcontextprotocol/sdk to "^1.17.4", adding `elicitation` to `ClientCapabilities` type
2025-08-28 14:13:47 -04:00
AjayKumbham
c45c0e26a0 fix: add missing ClientCapabilities import 2025-08-28 22:25:46 +05:30
Kumbham Ajay Goud
d321841519 Update src/everything/everything.ts
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2025-08-28 22:17:07 +05:30
Kumbham Ajay Goud
2b8ba4ac9f Update src/everything/everything.ts
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2025-08-28 22:16:52 +05:30
Kumbham Ajay Goud
d279ace6b4 Update src/everything/everything.ts
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2025-08-28 22:16:33 +05:30
AjayKumbham
f51757eedb fix: remove roots from server capabilities - it's a client capability 2025-08-28 16:21:48 +05:30
AjayKumbham
96ea8d1eb9 Merge branch 'add-roots-support-to-everything-server' of https://github.com/AjayKumbham/servers into add-roots-support-to-everything-server 2025-08-27 20:25:41 +05:30
AjayKumbham
39c1ca8df0 feat: improve roots messaging to distinguish client support vs configuration
- Add clientSupportsRoots tracking variable
- Set clientSupportsRoots during initialization based on client capabilities
- Update listRoots tool to provide clearer messaging:
  - Specific message when client doesn't support roots protocol
  - Different message when client supports roots but none are configured
- Improves user experience by clearly explaining the different scenarios

Addresses feedback from @olaservo in PR review
2025-08-27 20:24:23 +05:30
Kumbham Ajay Goud
c51480bb30 Merge branch 'main' into add-roots-support-to-everything-server 2025-08-26 21:53:52 +05:30
Ola Hungerford
e968c6c8fc Merge pull request #2611 from modelcontextprotocol/claude/issue-2598-20250824-0325
Improve parameter descriptions in sequential-thinking for better LLM type safety
2025-08-26 08:04:06 -07:00
Mohamed Amine Berguiga
09adff0b29 feat(git): add date-based commit log retrieval functions (#2057)
Co-authored-by: adam jones <domdomegg+git@gmail.com>
2025-08-25 18:26:32 +01:00
claude[bot]
ec91421265 Improve parameter descriptions in sequential-thinking for better LLM type safety
Update thoughtNumber and totalThoughts parameter descriptions to use positive-only examples that guide LLMs toward correct numeric type usage. This addresses the issue where LLMs sometimes generate string values (e.g. "1") instead of numeric values (e.g. 1) for integer parameters.

Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
2025-08-24 03:27:40 +00:00
Sebastien Rosset (serosset)
b647cb3019 Add documentation for the read_multiple_files action. 2025-08-23 10:51:51 -07:00
Finn Andersen
fd886fac9c Support glob pattern in search_files tool (#745)
Co-authored-by: Adam Jones <adamj+git@anthropic.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Adam Jones <adamj@anthropic.com>
2025-08-23 07:37:53 +01:00
Enrico Ballardini
d381cf1ffd feat(directory_tree): add excludePatterns support & documentation (#623)
- Update documentation with directory_tree declaration
- Add excludePatterns parameter to DirectoryTreeArgsSchema
- Implement pattern exclusion in buildTree function using minimatch
- Pass excludePatterns through recursive calls
- Support both simple and glob patterns for exclusion
- Maintain consistent behavior with search_files implementation

* Add tests and fix implementation

---------

Co-authored-by: Ola Hungerford <olahungerford@gmail.com>
Co-authored-by: Adam Jones <adamj+git@anthropic.com>
Co-authored-by: Adam Jones <adamj@anthropic.com>
2025-08-23 07:19:01 +01:00
Ola Hungerford
eada35985b Merge branch 'main' into add-roots-support-to-everything-server 2025-08-22 21:19:36 -07:00
Zehra Nur Olgun
60eb7c28ad feat: add day of week to time result (#2580) 2025-08-22 03:48:39 +01:00
Michael Casazza
46368832ef Windows filesystem MCP enhancements (#543)
* fix: comprehensive Windows path handling improvements

- Add path-utils module for consistent path handling
- Handle Windows paths with spaces via proper quoting
- Support Unix-style Windows paths (/c/path)
- Support WSL paths (/mnt/c/path)
- Add comprehensive test coverage
- Fix path normalization for all path formats

Closes #447

* tested locally and working now

* Add filesystem path utils and tests

* Ensure Windows drive letters are capitalized in normalizePath

* adding test for gh pr comment

* pushing jest and windows testing config

* last commit? fixing comments on PR

* Fix bin and bump sdk

* Remove redundant commonjs version of path-utils and import from ts version

* Remove copying cjs file

* Remove copying run-server

* Remove complex args parsing and do other cleanup

* Add missing tools details to Readme

* Move utility functions from index to lib

* Add more tests and handle very small and very large files edge cases

* Finish refactoring and include original security fix comments

* On Windows, also check for drive root

* Check symlink support on restricted Windows environments

* Fix tests

* Bump SDK and package version

* Clean up

---------

Co-authored-by: olaservo <olahungerford@gmail.com>
Co-authored-by: adam jones <adamj+git@anthropic.com>
2025-08-18 18:23:40 +01:00
Kumbham Ajay Goud
cf9f66c14e feat: add MCP roots protocol support to everything server
- Add roots capability declaration with listChanged: true
- Implement roots/list_changed notification handler
- Add initialization handler to request initial roots from client
- Add new listRoots tool to demonstrate roots functionality
- Add comprehensive logging for roots protocol events
- Update README.md with roots documentation

Resolves #2552

The everything server now demonstrates all MCP features including the roots protocol.
This provides a complete reference implementation for client developers to test
their roots protocol implementation against, even though this server doesn't
access files directly.
2025-08-18 15:31:23 +05:30
Ola Hungerford
7e1d9d9ede fix: clarify list_allowed_directories description to mention subdirectory access (#2571)
The tool description was ambiguous about subdirectory access within allowed directories.
Updated the description to explicitly state that subdirectories are also accessible.

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
2025-08-17 23:32:33 +01:00
Ola Hungerford
c5fec2935a Merge pull request #2569 from modelcontextprotocol/claude/issue-1948-20250817-1717
Fix SSE server crash by starting notification timers only after client connects
2025-08-17 15:30:37 -07:00
claude[bot]
9da43bc355 Fix SSE server crash by starting notification timers only after client connects
- Move setInterval calls from server creation to startNotificationIntervals function
- Only start notification timers when a client actually connects to the SSE server
- Prevents 'Not connected' error when server tries to send notifications before client connection
- Fixes issue where server crashes after 5 seconds when running 'npx @modelcontextprotocol/server-everything sse'

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

Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
2025-08-17 17:20:36 +00:00
claude[bot]
54f9c6968e fix: remove incorrect resources claim from filesystem server README
The filesystem server does not actually implement MCP Resources capability
but the README incorrectly claimed it provides 'file://system' resource interface.

Fixes #399

Co-authored-by: Ola Hungerford <olaservo@users.noreply.github.com>
2025-08-17 16:38:29 +00:00
Matthias Glastra
15ed42bf7e git MCP: Add support for git-lfs (#2503) 2025-08-16 22:17:12 +01:00
Taj Baba
a67e3b0a92 fix: mcp_server_git: correct add logic for ["."] (#2379) 2025-08-11 12:09:26 +01:00
Ola Hungerford
1028b32573 Merge pull request #2328 from kunalbabre/main
docs: Update VS Code installation instructions to use mcp.json for issue  #2320
2025-08-07 07:28:32 -07:00
Ola Hungerford
c798393a5a Merge branch 'main' into ajoslin/memory 2025-08-02 19:42:29 -07:00
evalstate
3a297d8432 Revert "1) Update README to contain basic build/run instructions. Remove legacy test advice."
(wrong branch push)
This reverts commit b43ecf8710.
2025-08-02 10:17:05 +01:00
evalstate
b43ecf8710 1) Update README to contain basic build/run instructions. Remove legacy test advice.
2) Make the Unit Test insensitive to the git default branch name
2025-08-02 10:13:32 +01:00
evalstate
4c192aee93 Remove out-of-specification notifications/stderr sending 2025-08-02 08:46:33 +01:00
Adam Jones
2b041eef88 time: Add tests for local timezone detection and handling in get_local_tz function 2025-08-01 19:08:14 +01:00
Cliff Hall
cc52ec5e65 Merge branch 'main' into add-structured-content-tool 2025-07-29 10:35:57 -04:00
Sampath Vuyyuru
a688cca947 Update src/filesystem/README.md
Fix broken link to Roots
2025-07-26 18:09:30 +00:00
cliffhall
704275818f Replace read_file tool with deprecation notice in description, which is functionally just an alias for read_text_file 2025-07-25 16:01:05 -04:00
cliffhall
471ac89f55 Update SDK version 2025-07-24 14:37:49 -04:00
Richard Michael
84a872145c feature: Add a tool with Structured Content and an Output Schema
Tools gained Structured Content in Specification 2025-16-18
https://modelcontextprotocol.io/specification/2025-06-18/server/tools#structured-content

The MCP Inspector is able to handle these outputs.
2025-07-23 11:43:36 -07:00
Richard Michael
9e28ac7fd1 chore: Add serverInfo title, as in specification 2025-06-18 2025-07-23 11:43:33 -07:00
Richard Michael
bb1b418da1 chore: Code organization: consistent tool order everywhere 2025-07-23 11:43:30 -07:00