@stratta/mcp 1.18.1 → 1.19.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.
|
@@ -13,7 +13,7 @@ export type CatalogEntry = {
|
|
|
13
13
|
transports: Transport[];
|
|
14
14
|
params: Record<string, string>;
|
|
15
15
|
};
|
|
16
|
-
export declare const SERVER_INSTRUCTIONS = "Stratta serves the norms and reference documents of the signed-in organization (technical standards, laws, ordinances, regulations, accounting standards, internal references), and only those. Call `get_methodology` before the first substantive question of a conversation: it carries the navigation order, the citation rules and the dossier policy.
|
|
16
|
+
export declare const SERVER_INSTRUCTIONS = "Stratta serves the norms and reference documents of the signed-in organization (technical standards, laws, ordinances, regulations, accounting standards, internal references), and only those. Call `get_methodology` before the first substantive question of a conversation: it carries the navigation order, the citation rules and the dossier policy. A question these documents are meant to settle is answered from them, not from memory; a norm absent from `list_norms` cannot be read.";
|
|
17
17
|
export declare const CATALOG: CatalogEntry[];
|
|
18
18
|
export type PromptArg = {
|
|
19
19
|
name: string;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// Generated by scripts/build-mcp-catalog.mjs from convex/mcpCatalog.ts.
|
|
2
2
|
// Do not edit: change the source and run the script.
|
|
3
|
-
export const SERVER_INSTRUCTIONS = "Stratta serves the norms and reference documents of the signed-in organization (technical standards, laws, ordinances, regulations, accounting standards, internal references), and only those. Call `get_methodology` before the first substantive question of a conversation: it carries the navigation order, the citation rules and the dossier policy.
|
|
3
|
+
export const SERVER_INSTRUCTIONS = "Stratta serves the norms and reference documents of the signed-in organization (technical standards, laws, ordinances, regulations, accounting standards, internal references), and only those. Call `get_methodology` before the first substantive question of a conversation: it carries the navigation order, the citation rules and the dossier policy. A question these documents are meant to settle is answered from them, not from memory; a norm absent from `list_norms` cannot be read.";
|
|
4
4
|
export const CATALOG = [
|
|
5
5
|
{
|
|
6
6
|
"name": "get_methodology",
|
|
7
7
|
"title": "Working method",
|
|
8
|
-
"description": "Read the working contract this server expects an agent to follow: how to walk a norm from its table of contents down to a clause, how to cite what it reads, and when to record something in a project dossier.
|
|
8
|
+
"description": "Read the working contract this server expects an agent to follow: how to walk a norm from its table of contents down to a clause, how to cite what it reads, and when to record something in a project dossier. Use this at the start of a conversation that will rely on the documents of the organization; its rules hold for the rest of that conversation.",
|
|
9
9
|
"annotations": {
|
|
10
10
|
"readOnlyHint": true,
|
|
11
11
|
"destructiveHint": false,
|
|
@@ -37,7 +37,7 @@ export const CATALOG = [
|
|
|
37
37
|
{
|
|
38
38
|
"name": "list_norms",
|
|
39
39
|
"title": "Available norms",
|
|
40
|
-
"description": "List the norms and reference documents (standards, laws, regulations) published in the signed-in organization, with code, year, title, language and coverage (how much of the norm was ingested).
|
|
40
|
+
"description": "List the norms and reference documents (standards, laws, regulations) published in the signed-in organization, with code, year, title, language and coverage (how much of the norm was ingested). Use this when a question may be settled by the documents of the organization and the norm is not yet known: a norm absent from this list cannot be read here. A demo entry is fictional and never a technical reference; a sparse entry carries a notice to relay.",
|
|
41
41
|
"annotations": {
|
|
42
42
|
"readOnlyHint": true,
|
|
43
43
|
"destructiveHint": false,
|
|
@@ -138,7 +138,7 @@ export const CATALOG = [
|
|
|
138
138
|
{
|
|
139
139
|
"name": "search_corpus",
|
|
140
140
|
"title": "Search all norms",
|
|
141
|
-
"description": "Full-text search across every norm the organization can read, grouped by norm, heading hits from any norm ahead of body hits. Use
|
|
141
|
+
"description": "Full-text search across every norm the organization can read, grouped by norm, heading hits from any norm ahead of body hits. Use this when the question does not name its norm: it tells which norms speak of the subject before any table of contents is opened. Same matching as search_in_norm. Returns, per norm, its code and title and a few hits; continue with get_section on the paths that look relevant.",
|
|
142
142
|
"annotations": {
|
|
143
143
|
"readOnlyHint": true,
|
|
144
144
|
"destructiveHint": false,
|
|
@@ -197,7 +197,7 @@ export const CATALOG = [
|
|
|
197
197
|
{
|
|
198
198
|
"name": "show_citations",
|
|
199
199
|
"title": "Show cited clauses",
|
|
200
|
-
"description": "
|
|
200
|
+
"description": "Use this when an answer rests on clauses read with get_section and the person should be able to check them: shows those clauses as cards they can open against the norm, once per answer, in the order they were cited. It reads nothing new and does not replace get_section; only clauses actually read belong in it.",
|
|
201
201
|
"annotations": {
|
|
202
202
|
"readOnlyHint": true,
|
|
203
203
|
"destructiveHint": false,
|
|
@@ -488,7 +488,7 @@ export const CATALOG = [
|
|
|
488
488
|
{
|
|
489
489
|
"name": "save_finding",
|
|
490
490
|
"title": "Record evidence",
|
|
491
|
-
"description": "
|
|
491
|
+
"description": "Use this when a piece of evidence turns up during the work: records it in a dossier, one at a time rather than in a batch at the end. Kinds: reference (what a norm says; always give normCode, sectionPath and page, or it is not a reference), hypothesis (the value the user retains and why, value in value and reasoning in detail), observation (what the site, a borehole or a survey showed, with the date). One clause, one value or one fact per call, in one or two sentences. Pass questionId to file it under the question it serves; without it the entry waits unclassified. Set confidence whenever a value is at stake: established, judgement or to_confirm. Questions go through open_question and decisions through record_decision, not here.",
|
|
492
492
|
"annotations": {
|
|
493
493
|
"readOnlyHint": false,
|
|
494
494
|
"destructiveHint": false,
|
|
@@ -518,7 +518,7 @@ export const CATALOG = [
|
|
|
518
518
|
{
|
|
519
519
|
"name": "record_decision",
|
|
520
520
|
"title": "Record a decision",
|
|
521
|
-
"description": "
|
|
521
|
+
"description": "Use this when the user has settled a point: records the decision in one line, why, and the clause it rests on. Pass questionId when the question already exists; otherwise pass dossierId and question (what is settled, in one line) and the question is opened on the spot, already decided. Name the retained option when the question listed some; put the number in value and set confidence when the decision is a value. Meant for decisions the user confirmed, not for conclusions of the agent alone. Returns entryId.",
|
|
522
522
|
"annotations": {
|
|
523
523
|
"readOnlyHint": false,
|
|
524
524
|
"destructiveHint": false,
|
|
@@ -548,7 +548,7 @@ export const CATALOG = [
|
|
|
548
548
|
{
|
|
549
549
|
"name": "load_dossier",
|
|
550
550
|
"title": "Load a dossier",
|
|
551
|
-
"description": "Reload a dossier: its questions with their evidence, options and decisions, open questions first, then the evidence not yet filed under a question, then the comments a colleague left.
|
|
551
|
+
"description": "Reload a dossier: its questions with their evidence, options and decisions, open questions first, then the evidence not yet filed under a question, then the comments a colleague left. Use this when the user returns to a project already named: the decisions already taken are there. The name is enough; the id is optional.",
|
|
552
552
|
"annotations": {
|
|
553
553
|
"readOnlyHint": true,
|
|
554
554
|
"destructiveHint": false,
|
|
@@ -587,7 +587,7 @@ export const CATALOG = [
|
|
|
587
587
|
{
|
|
588
588
|
"name": "list_attachments",
|
|
589
589
|
"title": "Project attachments",
|
|
590
|
-
"description": "List the project attachments of one dossier: the site reports, borehole logs, meeting minutes and data sheets the user uploaded. Returns for each its id, name, type, page count and extraction status.
|
|
590
|
+
"description": "List the project attachments of one dossier: the site reports, borehole logs, meeting minutes and data sheets the user uploaded. Returns for each its id, name, type, page count and extraction status. Use this when a question on the project may rest on what the office uploaded; read_attachment opens one, and a piece is cited like a clause.",
|
|
591
591
|
"annotations": {
|
|
592
592
|
"readOnlyHint": true,
|
|
593
593
|
"destructiveHint": false,
|
|
@@ -664,7 +664,7 @@ export const CATALOG = [
|
|
|
664
664
|
{
|
|
665
665
|
"name": "list_templates",
|
|
666
666
|
"title": "Dossier templates",
|
|
667
|
-
"description": "List the checklists the organization wrote for its types of case: each is a set of questions with the clauses they rest on.
|
|
667
|
+
"description": "List the checklists the organization wrote for its types of case: each is a set of questions with the clauses they rest on. Use this when a new project may match a type of case the office already wrote down; apply_template opens all its questions at once.",
|
|
668
668
|
"annotations": {
|
|
669
669
|
"readOnlyHint": true,
|
|
670
670
|
"destructiveHint": false,
|
|
@@ -757,7 +757,7 @@ export const CATALOG = [
|
|
|
757
757
|
{
|
|
758
758
|
"name": "get_skill",
|
|
759
759
|
"title": "Read a skill",
|
|
760
|
-
"description": "Read one skill in full: Markdown with its front matter (name, description) and its steps, rules and output shape.
|
|
760
|
+
"description": "Read one skill in full: Markdown with its front matter (name, description) and its steps, rules and output shape. Use this when a task matches a skill from list_skills; the skill describes how the office does it. The organization version wins over the Stratta version of the same name, because it carries the office plan and wording. Returns null when no skill has that name.",
|
|
761
761
|
"annotations": {
|
|
762
762
|
"readOnlyHint": true,
|
|
763
763
|
"destructiveHint": false,
|
|
@@ -1022,7 +1022,7 @@ export const CATALOG = [
|
|
|
1022
1022
|
{
|
|
1023
1023
|
"name": "ingest_status",
|
|
1024
1024
|
"title": "Check ingestion status",
|
|
1025
|
-
"description": "Check whether a norm (by code) already exists in the workspace, how many sections it has and its coverage score (how much of the norm actually made it in).
|
|
1025
|
+
"description": "Check whether a norm (by code) already exists in the workspace, how many sections it has and its coverage score (how much of the norm actually made it in). Use this before creating a document, so a norm is not ingested twice.",
|
|
1026
1026
|
"annotations": {
|
|
1027
1027
|
"readOnlyHint": true,
|
|
1028
1028
|
"destructiveHint": false,
|
|
@@ -1170,7 +1170,7 @@ export const CATALOG = [
|
|
|
1170
1170
|
{
|
|
1171
1171
|
"name": "ingest_normalize_cross_refs",
|
|
1172
1172
|
"title": "Normalize cross-references",
|
|
1173
|
-
"description": "Scan every section of a document and
|
|
1173
|
+
"description": "Scan every section of a document and add the cross-references to other norms found in its text that are not recorded yet; existing ones are kept. Idempotent; run it after the sections are in.",
|
|
1174
1174
|
"annotations": {
|
|
1175
1175
|
"readOnlyHint": false,
|
|
1176
1176
|
"destructiveHint": false,
|
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.19.0",
|
|
5
5
|
"description": "MCP server exposing your organization’s norms and reference documents (standards, laws, regulations) to any MCP client, with exact citations, via Stratta TreeRAG.",
|
|
6
6
|
"license": "UNLICENSED",
|
|
7
7
|
"author": "SmartFlow <hello@stratta.ch>",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: consult-stratta
|
|
3
|
-
description: Use Stratta to answer
|
|
3
|
+
description: Use Stratta to answer professional questions from the norms and reference documents the organization deposited (technical standards such as SIA or Eurocodes, laws, ordinances, regulations, accounting standards, in-house references) with exact citations, cross-reference checks, figures, and optional project dossiers. Trigger phrases: "selon la norme", "que dit la loi", "d'apres la SIA", "que dit l'Eurocode", "verifie dans les normes", "reprends le dossier".
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Consult Stratta
|