@procedures/mcp-dev-tools 0.46.0 → 0.47.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,48 @@
1
1
  # @procedures/mcp-dev-tools
2
2
 
3
+ ## 0.47.2
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [0650616]
8
+ - Updated dependencies [ae1e3fd]
9
+ - Updated dependencies [f1ece74]
10
+ - @procedures/client@0.47.2
11
+ - @procedures/bundle-mcp@0.47.2
12
+ - @procedures/fs@0.47.2
13
+ - @procedures/mcp-server@0.47.2
14
+ - @procedures/compiler@0.47.2
15
+
16
+ ## 0.47.1
17
+
18
+ ### Patch Changes
19
+
20
+ - Updated dependencies [f845c6d]
21
+ - @procedures/client@0.47.1
22
+ - @procedures/bundle-mcp@0.47.1
23
+ - @procedures/fs@0.47.1
24
+ - @procedures/mcp-server@0.47.1
25
+ - @procedures/compiler@0.47.1
26
+
27
+ ## 0.47.0
28
+
29
+ ### Patch Changes
30
+
31
+ - Updated dependencies [c9125a8]
32
+ - Updated dependencies [335728b]
33
+ - Updated dependencies [d987202]
34
+ - Updated dependencies [45a737f]
35
+ - Updated dependencies [d77e9e8]
36
+ - Updated dependencies [e913014]
37
+ - Updated dependencies [2f0c7b0]
38
+ - Updated dependencies [ad70c38]
39
+ - Updated dependencies [47819c6]
40
+ - @procedures/client@0.47.0
41
+ - @procedures/compiler@0.47.0
42
+ - @procedures/fs@0.47.0
43
+ - @procedures/mcp-server@0.47.0
44
+ - @procedures/bundle-mcp@0.47.0
45
+
3
46
  ## 0.46.0
4
47
 
5
48
  ### Patch Changes
@@ -414,13 +457,13 @@
414
457
  - A face of your own that gives `mcpFace()` a handler of its own: give the handler `admission: (credentials) => server.admission(credentials)`.
415
458
  - An MCP client that a request hook refuses gets 401 at `initialize`. Give it valid credentials for each HTTP request.
416
459
  - The site: no change. It has no MCP host, and it used no function of `peer/security.ts`.
417
- - MiniMongo: no change. Its dev host has only the HTTP and WebSocket faces of `createProcedureHost()`. Each request of these faces had one check before.
418
- - Graph: its `mcpFace()` on the procedures host uses `graphPrincipalOf` for each HTTP request. In the accounts mode, a request without a session gets `ANONYMOUS`. Thus an MCP client without a session gets no 401 at `initialize`.
419
- - Graph: in the mode `on` (`AUTH_MODE=on`), a request without a tenant token gets 401 at `initialize`. Before, the client opened a session and listed the tools, and each tool call got `UNAUTHORIZED`.
420
- - Graph: accounts that are not ready (the error `UNAVAILABLE` of the hook) give 401 at `initialize`, with `WWW-Authenticate: Bearer`. Before, `initialize` passed, and each tool call got `UNAUTHORIZED`. An MCP client can start its OAuth discovery on this 401.
421
- - Graph: outside the accounts mode, the policy has `allowedOrigins: "*"`. The MCP face takes it, as the HTTP face does. A request with a cookie still needs a named origin. With the default `ambientCredentials: "always"` of its request hook, `"*"` permits no other origin.
422
- - Graph: to keep only the own origin on the MCP face, give `mcpFace({ allowedOrigins: [] })`. Its MCP host over stdio has no change.
423
- - jarvis: no change. Its procedures host has only the HTTP face, and its MCP host has only stdio and SDK faces.
460
+ - An app: no change. Its dev host has only the HTTP and WebSocket faces of `createProcedureHost()`. Each request of these faces had one check before.
461
+ - An app: its `mcpFace()` on the procedures host uses a session hook for each HTTP request. In the accounts mode, a request without a session gets `ANONYMOUS`. Thus an MCP client without a session gets no 401 at `initialize`.
462
+ - An app: in the mode `on` (`AUTH_MODE=on`), a request without a tenant token gets 401 at `initialize`. Before, the client opened a session and listed the tools, and each tool call got `UNAUTHORIZED`.
463
+ - An app: accounts that are not ready (the error `UNAVAILABLE` of the hook) give 401 at `initialize`, with `WWW-Authenticate: Bearer`. Before, `initialize` passed, and each tool call got `UNAUTHORIZED`. An MCP client can start its OAuth discovery on this 401.
464
+ - An app: outside the accounts mode, the policy has `allowedOrigins: "*"`. The MCP face takes it, as the HTTP face does. A request with a cookie still needs a named origin. With the default `ambientCredentials: "always"` of its request hook, `"*"` permits no other origin.
465
+ - An app: to keep only the own origin on the MCP face, give `mcpFace({ allowedOrigins: [] })`. Its MCP host over stdio has no change.
466
+ - An app: no change. Its procedures host has only the HTTP face, and its MCP host has only stdio and SDK faces.
424
467
  - `mark mcp --http --token` and `@procedures/mcp-dev-tools`: no change for a client. The token is the token of the server, and the server checks each HTTP request one time.
425
468
 
426
469
  ### Patch Changes
@@ -545,9 +588,9 @@
545
588
 
546
589
  - A host with more than 256 clients at one time: give a larger `maxSessions`, or `maxSessions: Infinity` for no limit. Give it in `faces.http` of `createMcpHost()`, in `mcpFace()`, or with `mark mcp --http <port> --max-sessions <n>`.
547
590
  - A host that keeps more than 1000 tasks: give a larger `maxStored`, or `maxStored: Infinity`, in `tasks` of the host or in `new McpTaskStore()`.
548
- - The site and MiniMongo: no change. They have no MCP host.
549
- - Graph: no change. Its `mcpFace()` on the procedures host gets the limit of 256 sessions, and its MCP host over stdio has no HTTP face. To keep no limit, give `mcpFace({ maxSessions: Infinity })`.
550
- - jarvis: no change. Its MCP host has only stdio and SDK faces, and it has no tasks.
591
+ - The site and an app: no change. They have no MCP host.
592
+ - An app: no change. Its `mcpFace()` on the procedures host gets the limit of 256 sessions, and its MCP host over stdio has no HTTP face. To keep no limit, give `mcpFace({ maxSessions: Infinity })`.
593
+ - An app: no change. Its MCP host has only stdio and SDK faces, and it has no tasks.
551
594
  - polite-crawler-mcp: no change for the sessions, because it sets `maxSessions: 32`. Its `McpTaskStore` gets the limit of 1000 stored tasks. Before, 32 sessions of 100 tasks bounded the store at 3200 tasks. To keep that bound, give `new McpTaskStore({ maxStored: 3200 })`.
552
595
  - polite-crawler-mcp also gives the deprecated option `mount: true`, which has no effect. Remove it when it moves to the new range.
553
596
 
@@ -678,7 +721,7 @@
678
721
 
679
722
  - A host with `faces.http: { port, host }`: give `faces.http: {}`. Mount `host.handleHttp` on a listener, for example an `httpTransport` of `@mark1russell7/service/http`, and declare the listener and the host on a service (`host.declare(svc)`). The README of `@procedures/mcp-server` has the example.
680
723
  - A caller of `startDevToolsServer()`: call `runDevToolsServer(config)`.
681
- - The site, MiniMongo, Graph and jarvis: no change. Graph mounts `mcpFace()` on its procedures host, and its stdio MCP host and the host of jarvis use stdio and SDK faces.
724
+ - Apps: no change. One app mounts `mcpFace()` on its procedures host, and its stdio MCP host and the host of another app use stdio and SDK faces.
682
725
 
683
726
  ### Patch Changes
684
727
 
@@ -742,7 +785,7 @@
742
785
  - The listener of the Streamable HTTP face: the options `port`, `host` and `server` of `HttpTransportOptions`, and `McpHttpTransport.listen()`. Give `mount: true`, and mount `McpHost.handleHttp` on a listener of the service.
743
786
  - `startDevToolsServer()` of `@procedures/mcp-dev-tools`. Use `runDevToolsServer()`.
744
787
 
745
- Migration for the next MINOR: the site uses none of them. MiniMongo uses none of them. Graph mounts `mcpFace()` on its host, and its stdio host keeps `createMcpHost()` with `stdio`: no change. jarvis uses `createMcpHost()` with stdio and SDK faces: no change. A host with `faces.http: { port }` moves to `faces.http: { mount: true }` and a listener of the service.
788
+ Migration for the next MINOR: the site uses none of them. One app uses none of them. Another app mounts `mcpFace()` on its host, and its stdio host keeps `createMcpHost()` with `stdio`: no change. A third app uses `createMcpHost()` with stdio and SDK faces: no change. A host with `faces.http: { port }` moves to `faces.http: { mount: true }` and a listener of the service.
746
789
  - Updated dependencies [85999c1]
747
790
  - Updated dependencies [fc968f6]
748
791
  - Updated dependencies [dc7a462]
package/README.md CHANGED
@@ -45,7 +45,7 @@ When the client closes the input of stdio, the server stops: the calls in flight
45
45
  | `MCP_DEBUG` | `false` | With `true`, the server writes debug lines to stderr |
46
46
  | `MCP_TOOL_TIMEOUT_MS` | `600000` | The time limit of a tool call, in milliseconds. `0` turns the limit off. |
47
47
  | `MCP_READ_ONLY` | `false` | With `true`, the tools are only the procedures that change nothing |
48
- | `MCP_HTTP_PORT`, `MCP_HTTP_HOST`, `MCP_HTTP_TOKEN` | not set | The server uses Streamable HTTP on this port, not stdio. The host is `127.0.0.1` by default. |
48
+ | `MCP_HTTP_PORT`, `MCP_HTTP_HOST`, `MCP_HTTP_TOKEN` | not set | The server uses Streamable HTTP on this port, not stdio. The host is `127.0.0.1` by default. A set and empty `MCP_HTTP_TOKEN` is an error at the start. |
49
49
  | `MCP_HTTP_MAX_SESSIONS` | `256` | The most sessions of the Streamable HTTP face at one time (CLI-51). `Infinity` turns the limit off. |
50
50
  | `MCP_PROGRAM_CHECK` | `true` | With `false`, a program starts without the check before the run |
51
51
  | `MCP_FS_ROOT` | not set | The root of the files: each tool keeps its paths in this folder, or the host refuses it. Refer to "The root of the files". |