@stratta/mcp 1.17.0 → 1.18.0
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/README.md +12 -3
- package/dist/tools/catalog.gen.js +47 -0
- package/dist/tools/toolsets.gen.js +4 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -34,7 +34,7 @@ https://stratta.ch/mcp
|
|
|
34
34
|
That is the shorter path, the one the dashboard walks you through for Claude,
|
|
35
35
|
ChatGPT, Claude Code, Codex, Cursor, VS Code, Gemini CLI and Windsurf, and the
|
|
36
36
|
only one that works in an agent running in the cloud (claude.ai, ChatGPT). It
|
|
37
|
-
serves
|
|
37
|
+
serves 61 of the 62 tools below, **ingestion included**: the pre-pass script is
|
|
38
38
|
downloaded from https://stratta.ch/ingest-prepass.py when it is not on disk.
|
|
39
39
|
See https://stratta.ch/docs/en/guides/connect-remote.
|
|
40
40
|
|
|
@@ -191,8 +191,9 @@ named `E2E dossier <timestamp>` and does not delete it.
|
|
|
191
191
|
|
|
192
192
|
## Tools exposed
|
|
193
193
|
|
|
194
|
-
|
|
195
|
-
|
|
194
|
+
62 tools, generated from one catalogue shared with the remote connector. This
|
|
195
|
+
package announces 59 of them; the remote connector serves 61: everything minus
|
|
196
|
+
`add_attachment`, plus the three tools a host calls for the person, listed last.
|
|
196
197
|
|
|
197
198
|
**Read** (10 tools — query the norms of your workspace):
|
|
198
199
|
|
|
@@ -291,6 +292,14 @@ too, and its file is the layout the Word export is rendered into.
|
|
|
291
292
|
| `ingest_publish` | Score the document and flip it to published; refuses below 30/100 unless forced. |
|
|
292
293
|
| `ingest_delete` | Delete a document and all its children. |
|
|
293
294
|
|
|
295
|
+
**Remote only** (3 tools, served by `https://stratta.ch/mcp` and not by this package, which draws no interface):
|
|
296
|
+
|
|
297
|
+
| Tool | Purpose |
|
|
298
|
+
| ------------------ | ------------------------------------------------------------------------------------------------------------ |
|
|
299
|
+
| `show_citations` | Show the clauses an answer cites as cards (an MCP App), each quote checked word for word against the clause. |
|
|
300
|
+
| `open_norm_reader` | The norm reader, opened by the person from the host's side panel or sidebar; hidden from the model. |
|
|
301
|
+
| `get_profile` | An opaque id and the organization of the connection, so a host tells two connected accounts apart. |
|
|
302
|
+
|
|
294
303
|
## How agents should use it
|
|
295
304
|
|
|
296
305
|
For querying:
|
|
@@ -194,6 +194,53 @@ export const CATALOG = [
|
|
|
194
194
|
"figureId": "Figure identifier from the figures array of get_section."
|
|
195
195
|
}
|
|
196
196
|
},
|
|
197
|
+
{
|
|
198
|
+
"name": "show_citations",
|
|
199
|
+
"title": "Show cited clauses",
|
|
200
|
+
"description": "Show the person the clauses your answer rests on, as cards they can open and check against the norm. Call it once, after answering, with the sections you actually read with get_section and cited, in the order you cited them. It reads nothing new: it never replaces get_section, and a clause you did not read must not be listed.",
|
|
201
|
+
"annotations": {
|
|
202
|
+
"readOnlyHint": true,
|
|
203
|
+
"destructiveHint": false,
|
|
204
|
+
"idempotentHint": true,
|
|
205
|
+
"openWorldHint": false
|
|
206
|
+
},
|
|
207
|
+
"transports": [
|
|
208
|
+
"remote"
|
|
209
|
+
],
|
|
210
|
+
"params": {
|
|
211
|
+
"citations": "The cited clauses, one to eight: code and path as get_section took them, the edition when the norm has several, and optionally the exact sentence quoted from the clause."
|
|
212
|
+
}
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"name": "open_norm_reader",
|
|
216
|
+
"title": "Norm reader",
|
|
217
|
+
"description": "Open the norm reader: the norms of the signed-in organization, each with its table of contents and its clauses, browsed by the person. Opened by the person from the side panel or the sidebar, never by the model.",
|
|
218
|
+
"annotations": {
|
|
219
|
+
"readOnlyHint": true,
|
|
220
|
+
"destructiveHint": false,
|
|
221
|
+
"idempotentHint": true,
|
|
222
|
+
"openWorldHint": false
|
|
223
|
+
},
|
|
224
|
+
"transports": [
|
|
225
|
+
"remote"
|
|
226
|
+
],
|
|
227
|
+
"params": {}
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"name": "get_profile",
|
|
231
|
+
"title": "Connected profile",
|
|
232
|
+
"description": "Return the profile behind this connection: a stable opaque id and the organization the connection reads from. Used by the host to tell several connected accounts apart; to check the workspace, call whoami.",
|
|
233
|
+
"annotations": {
|
|
234
|
+
"readOnlyHint": true,
|
|
235
|
+
"destructiveHint": false,
|
|
236
|
+
"idempotentHint": true,
|
|
237
|
+
"openWorldHint": false
|
|
238
|
+
},
|
|
239
|
+
"transports": [
|
|
240
|
+
"remote"
|
|
241
|
+
],
|
|
242
|
+
"params": {}
|
|
243
|
+
},
|
|
197
244
|
{
|
|
198
245
|
"name": "scan_site",
|
|
199
246
|
"title": "Scan a site",
|
|
@@ -23,6 +23,10 @@ export const TOOLSET_OF = {
|
|
|
23
23
|
search_corpus: 'norms',
|
|
24
24
|
get_cross_refs: 'norms',
|
|
25
25
|
get_figure: 'norms',
|
|
26
|
+
// Shown to the person rather than read by the model (ADR 59): remote only.
|
|
27
|
+
show_citations: 'norms',
|
|
28
|
+
open_norm_reader: 'norms',
|
|
29
|
+
get_profile: 'norms',
|
|
26
30
|
list_dossiers: 'dossiers',
|
|
27
31
|
open_dossier: 'dossiers',
|
|
28
32
|
load_dossier: 'dossiers',
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stratta/mcp",
|
|
3
3
|
"mcpName": "ch.stratta/mcp",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.18.0",
|
|
5
5
|
"description": "MCP server exposing the engineering norms your firm is licensed for (SIA / Eurocodes) to any MCP client, via Stratta TreeRAG.",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"author": "SmartFlow <hello@stratta.ch>",
|