Commit Graph

108 Commits

Author SHA1 Message Date
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
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
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
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
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
evalstate
4c192aee93 Remove out-of-specification notifications/stderr sending 2025-08-02 08:46:33 +01: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
Richard Michael
7ec0064157 chore: Code organization: completions follow all schema definitions 2025-07-23 11:43:27 -07:00
Richard Michael
114ad51b54 chore: Format for readability 2025-07-23 11:43:24 -07:00
Richard Michael
0d1653fff3 chore: Adjust to format easier to read and maintain 2025-07-23 11:43:20 -07:00
Kunal Babre
55a36ad0dd docs: Clean up VS Code installation instructions
- Remove unnecessary explanatory note about JSON format
- JSON examples already demonstrate the correct format clearly
- Streamlines documentation to focus on essential information
- Maintains reference to official VS Code MCP documentation

The removed note was redundant since both configuration methods 
use identical JSON structure shown in the examples.
2025-07-11 22:53:13 -07:00
Kunal Babre
95a72b792f docs: Add reference to official VS Code MCP documentation
- Add link to official VS Code MCP documentation in all server READMEs
- Enhances existing VS Code installation instructions with authoritative reference
- Provides users with comprehensive documentation for advanced configuration
- Complements the existing two-method approach with additional resources

Affects: everything, filesystem, git, memory, sequentialthinking
2025-07-11 22:45:10 -07:00
Kunal Babre
20eb59590e docs: Update VS Code installation instructions to use mcp.json
- Replace outdated 'Preferences: Open Settings (JSON)' instructions
- Add proper guidance for 'MCP: Open User Configuration' command
- Update JSON examples to remove mcp wrapper key
- Clarify user vs workspace configuration methods
- Fixes issue with outdated documentation across all servers

Affects: sequentialthinking, filesystem, memory, everything, git
2025-07-11 21:36:21 -07:00
Den Delimarsky
a83c56256e Fix content return 2025-07-06 21:18:43 -07:00
Den Delimarsky
7bc02607c5 Merge remote-tracking branch 'origin/elicitation-support' into elicitation-support 2025-07-05 11:47:10 -07:00
Den Delimarsky
d63329ded2 Updated based on PR feedback 2025-07-05 11:44:05 -07:00
Den Delimarsky ⚡
5ab3a00f5c Merge branch 'main' into elicitation-support 2025-07-04 10:58:24 -07:00
Ashwin Bhat
8dde417d10 formatting 2025-07-04 10:45:53 -07:00
Ashwin Bhat
0af52a9c22 remove summary 2025-07-04 10:39:07 -07:00
Ashwin Bhat
291ef21460 clarify message 2025-07-04 09:52:49 -07:00
Ashwin Bhat
6a7ef8f955 Add getResourceLinks tool to return multiple resource references
- Implement new tool that returns configurable number of resource links (1-10)
- Each link includes URI, name, description, and MIME type from available resources
- Minor formatting fixes for trailing commas and whitespace

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-03 22:50:51 -07:00
Den Delimarsky
11195cf3ff Update schema 2025-07-03 22:14:44 -07:00
Den Delimarsky
2de214f36a Some consistency changes 2025-07-03 21:03:10 -07:00
Den Delimarsky
dacaf27d5a Update README 2025-07-03 11:40:05 -07:00
Den Delimarsky ⚡
ebdfa7d84f Update src/everything/everything.ts
Co-authored-by: Ola Hungerford <olahungerford@gmail.com>
2025-06-30 14:27:57 -07:00
Den Delimarsky
0670875117 Remove comments 2025-06-25 21:08:24 -07:00
Den Delimarsky
a2a83cc40e Update elicitation demo 2025-06-25 20:54:33 -07:00
Den Delimarsky
642f3ac192 Update 2025-06-23 17:05:35 -07:00
Den Delimarsky
72714ed0f1 Elicitation support 2025-06-23 15:54:45 -07:00
Ola Hungerford
554320281b Update src/everything/instructions.md
Co-authored-by: Cliff Hall <cliff@futurescale.com>
2025-06-19 15:26:47 -07:00
Ola Hungerford
d85a01c4e2 Remove workflow mention related to resource subscription 2025-06-18 07:39:03 -07:00
Ola Hungerford
57c056e9ad Remove auto-sampling on subscription to a Resource 2025-06-17 06:58:12 -07:00
olaservo
88ce1f1fdd Adjust instructions 2025-06-14 18:22:43 -07:00
Cliff Hall
8c5d9c8a40 Merge branch 'main' into add-instructions 2025-05-29 10:54:33 -04:00
Cliff Hall
5f36973811 Merge pull request #1884 from cliffhall/everything-server-multiple-connection-support
Everything server multiple connection support
2025-05-29 10:41:51 -04:00
David Soria Parra
2dc1a34b75 update 2025-05-29 12:04:52 +01:00
cliffhall
3adf59409c In sse.ts, /message endpoint, if transport isn't found for the given sessionId, output a "No transport found for sessionId" message. 2025-05-28 17:29:42 -04:00
cliffhall
2da9f33969 Remove or clause for sessionId where "none" is offered as an alternative.
In the first case (line 16) we already know that req.query.sessionId is set to something. I

 n the second (line 40), it doesn't matter because if it doesn't map to a transport no further action is taken.
2025-05-28 16:31:21 -04:00