@node-in-layers/mcp-server 2.3.1 → 2.4.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 CHANGED
@@ -1,149 +1,349 @@
1
1
  # MCP Server - A Node In Layers Package for building MCP Servers
2
2
 
3
- This library adds the ability to easily create MCP servers with Node In Layers.
3
+ A Node In Layers package for building MCP servers. It exposes your domains, features, and model CRUDs as MCP tools so an AI can discover and call them. Companion library: `@node-in-layers/mcp-client` (shared protocols for features, models, and tools).
4
4
 
5
- It has a companion library called '@node-in-layers/mcp-client' which is used for creating MCP clients. These two libraries share the same functions for defining models and tools.
5
+ This system is `self-describing` and automatically organizes tools into an optimized and efficient system, that reduces the total number of tools. This system also automatically includes prompting and examples that greatly increase AI tool selection and formatting accuracy in systems, to include in systems with hundreds, if not thousands of tools.
6
6
 
7
- ## New Layer
7
+ ---
8
8
 
9
- This library adds a new layer `mcp` to the system. It should be placed after the `express` layer.
9
+ ## How To Use This
10
10
 
11
- ## Usage
11
+ ### 1. Install
12
12
 
13
- In order to use this library, you must make additions to your config, as well as create and export "mcp" layers from your apps/domains.
14
-
15
- ### Config
16
-
17
- you add this app/domain to your config file. You should do this before your apps which will add tools to the MCP server.
13
+ ```bash
14
+ npm install @node-in-layers/mcp-server
15
+ ```
18
16
 
19
- You then configure the `mcp` app/domain with the following:
17
+ ### 2. Configure
20
18
 
21
19
  ```typescript
22
- const mcpConfig = {
23
- // (optional) The name of your MCP server.
24
- name: 'mcp',
25
- // (optional) The version of your MCP server.
26
- version: '1.0.0',
27
- // The server config from @l4t/mcp-ai/simple-server/types.js
28
- server: {
29
- connection: {
30
- type: 'http',
31
- host: 'localhost',
32
- port: 3000,
33
- },
20
+ // /config.base.mts
21
+ import { CoreNamespace } from '@node-in-layers/core'
22
+ import { McpNamespace, HttpConnection } from '@node-in-layers/mcp-server'
23
+
24
+ export default () => ({
25
+ systemName: 'your-system-name',
26
+ [CoreNamespace.root]: {
27
+ /* 1. Add to the Apps List */
28
+ apps: await Promise.all([
29
+ // Other Very Early Modules
30
+ //import('@node-in-layers/data/index.js'),
31
+
32
+ // Insert Here
33
+ import('@node-in-layers/mcp-server/index.js'),
34
+
35
+ // Insert Your Domains Here
36
+ ]),
37
+ /* 2. Add mcp layer */
38
+ layerOrder: ['services', 'features', ['entries', 'mcp']], // can also be ['entries', 'express', 'mcp']
34
39
  },
35
- logging: {
36
- // optional
37
- // If you want to change the default. Its 'info' by default.
38
- requestLogLevel: 'info',
39
- // If you want to change the default. Its 'info' by default.
40
- responseLogLevel: 'info',
40
+ /* 3. Add Mcp Server Configurations */
41
+ [McpNamespace]: {
42
+ // Required: The configuration of the server itself.
43
+ server: {
44
+ connection: {
45
+ type: 'http',
46
+ url: 'http://localhost',
47
+ port: 4000,
48
+ } as HttpConnection,
49
+ },
50
+ // Optional arguments go here.
41
51
  },
42
- }
43
-
44
- const config = {
45
- ['@node-in-layers/mcp-server']: mcpConfig,
46
- }
52
+ })
47
53
  ```
48
54
 
49
- ### Creating an MCP Layer
55
+ ### 3. What's Now Available
56
+
57
+ 1. Features are automatically exposed (unless specifically hidden)
58
+ 2. Model CRUDS are automatically exposed (unless specifically hidden)
59
+ 3. An `mcp` layer is now available to features, and includes additional capabilities in the namespace: `McpNamespace`. (Explained later)
50
60
 
51
- You can create an MCP layer by exporting a function from your app/domain that returns a layer.
61
+ ### 4. Run The Server
62
+
63
+ You can very easily run the server in a simple script by doing the following:
52
64
 
53
65
  ```typescript
54
- // /src/yourDomain/mcp.ts
55
- import { McpContext, McpNamespace } from '@node-in-layers/mcp-server'
56
- import { Config } from '@node-in-layers/core'
57
- import { YourFeaturesLayer } from './features.js'
58
-
59
- const create = (context: McpContext<Config, YourFeaturesLayer>) => {
60
- // Adds your tool.
61
- context.mcp[McpNamespace].addTool({
62
- name: 'my-hello-world-tool',
63
- description: 'My Tool',
64
- execute: async (input: any) => {
65
- return 'Hello, world!'
66
- },
66
+ import { McpNamespace } from '@node-in-layers/mcp-server'
67
+ const system: System = (await core.loadSystem<SystemConfig>({
68
+ environment,
69
+ })) as any // "System" is your typed System object.
70
+ await system.mcp[McpNamespace].start(context)
71
+ ```
72
+
73
+ #### Example with ./bin/mcp_server.mts file (feel free to copy paste)
74
+
75
+ ```typescript
76
+ #!/usr/bin/env tsx
77
+
78
+ import esMain from 'es-main'
79
+ import { ArgumentParser } from 'argparse'
80
+ import * as core from '@node-in-layers/core'
81
+ import { McpNamespace } from '@node-in-layers/mcp-server'
82
+ import { SystemConfig } from '../src/types.js'
83
+ import { System } from '../src/system/types.js'
84
+
85
+ const _parseArguments = () => {
86
+ const parser = new ArgumentParser({
87
+ description: 'Starts the MCP server.',
88
+ })
89
+ parser.add_argument('environment', {
90
+ help: 'The environment for the service.',
67
91
  })
92
+ return parser.parse_args()
93
+ }
68
94
 
69
- // Create a tool from your feature
70
- context.mcp[McpNamespace].addTool({
71
- name: 'my-hello-world-tool',
72
- description: 'My Tool',
73
- inputSchema: {
74
- type: 'object',
75
- properties: {
76
- name: {
77
- type: 'string',
78
- },
79
- },
80
- required: ['name'],
81
- },
82
- execute: (input: any) => {
83
- // You get an object, pass it back to your feature. Handles async for you.
84
- return context.features.yourDomain.yourFeature(input)
85
- },
95
+ const startServer = async (environment: string) => {
96
+ const system = (await core.loadSystem<SystemConfig>({
97
+ environment,
98
+ })) as unknown as System
99
+ if (system.config[McpNamespace].server.connection.type === 'http') {
100
+ console.info(
101
+ `Starting MCP server on ${system.config[McpNamespace].server.connection.port}...`
102
+ )
103
+ }
104
+ process.on('SIGINT', async function () {
105
+ await system.services['@node-in-layers/data'].cleanup()
106
+ process.exit()
86
107
  })
87
108
 
88
- return {}
109
+ await system.mcp[McpNamespace].start(system)
89
110
  }
90
111
 
91
- export { create }
112
+ if (esMain(import.meta)) {
113
+ const args = _parseArguments()
114
+ startServer(args.environment).catch((error: any) => {
115
+ console.error('Failed to start the server:', error)
116
+ process.exit(1)
117
+ })
118
+ }
92
119
  ```
93
120
 
94
- ### Adding Models
121
+ ## Background and How This Works
122
+
123
+ ### MCP interface (domains, features, models)
124
+
125
+ The MCP tool surface is **organized by domain, then features and models**:
126
+
127
+ - **Domains** — The AI can list domains (`list_domains`), then for each domain list features (`list_features`) and (if present) list models. Only domains that have features or models exposed will be shown.
128
+ - **Features** — For a given domain/feature, the AI can get the schema (`describe_feature`) and run it (`execute_feature`).
129
+ - **Models** — For a given domain/model, the AI can get the schema and run save, retrieve, delete, search, bulkInsert, bulkDelete.
130
+
131
+ The **documentation returned to the AI** (including what START_HERE returns) is **configurable**. By default the server provides instructions so the AI will:
132
+
133
+ 1. List domains.
134
+ 2. List features (and models) within a domain.
135
+ 3. Describe a feature or model when it needs the schema.
136
+ 4. Execute features and model CRUD operations with the right arguments.
95
137
 
96
- You can wrap your models with CRUDS functions and add them to the MCP server with the mcp layer.
97
- NOTE: In order for this to work your layer must have both a services and a features layer. (In addition to your models.) Node in layers will automatically create a cruds property for you with your models, and you can add them.
138
+ So the AI learns the shape of the system from the configurable “start here” and default system entries, then uses the tools to list/describe/execute as needed.
98
139
 
99
- Here is an example of doing it one at a time. (Not generally recommended, but doable).
140
+ ### Hiding components
141
+
142
+ You can restrict what is visible (as well as executable) to callers (e.g. certain domains, features, or all model CRUDs) so only the intended surface is exposed.
143
+
144
+ Configure `hideComponents` under the MCP config:
145
+
146
+ - **paths** — Dot-separated paths to hide, e.g. `myDomain`, `myDomain.myFeature`, `myDomain.cruds`, `myDomain.cruds.MyModel`.
147
+ - **domains** — Domain names to hide entirely (they won’t appear in `list_domains`).
148
+ - **allModels** — If `true`, no model CRUD tools are exposed.
149
+
150
+ Everything not hidden remains available. See [Configuration details](#configuration-details) for the full shape.
151
+
152
+ Example (partial config):
100
153
 
101
154
  ```typescript
102
- // /src/yourDomain/mcp.ts
103
- import { McpContext, McpNamespace } from '@node-in-layers/mcp-server'
104
- import { Config } from '@node-in-layers/core'
105
- import { YourFeaturesLayer } from './features.js'
106
-
107
- const create = (context: McpContext<Config, YourFeaturesLayer>) => {
108
- // Adds your models cruds through features.
109
- context.mcp[McpNamespace].addModelCruds(
110
- context.features.yourFeature.cruds.Cars
111
- )
112
-
113
- return {}
114
- }
155
+ // /config.base.mts
156
+ import { McpNamespace } from '@node-in-layers/mcp-server'
157
+
158
+ export default () => ({
159
+ // ...
160
+ [McpNamespace]: {
161
+ // ...
162
+ hideComponents: {
163
+ // Completely hide these domains from the MCP surface
164
+ domains: ['internalAdmin', 'experimental'],
165
+
166
+ // Hide specific paths (domains, features, or models)
167
+ paths: [
168
+ 'billing.cruds', // hide all models in the billing domain
169
+ 'users.cruds.ApiKeys', // hide a single model. (The ApiKeys table located in the users domain)
170
+ 'debug.internalFeature', // hide a specific feature
171
+ ],
172
+
173
+ // Or hide all models everywhere. Good for "feature" oriented systems.
174
+ allModels: false, // set true to hide all model CRUD tools
175
+ },
176
+ },
177
+ })
115
178
  ```
116
179
 
117
- Here is a way that you can really cook with gas. (Highly recommended)
180
+ ---
118
181
 
119
- ```typescript
120
- // /src/yourDomain/mcp.ts
121
- import { McpContext, McpNamespace, mcpModels } from '@node-in-layers/mcp-server'
122
- import { Config } from '@node-in-layers/core'
123
- import { YourFeaturesLayer } from './features.js'
182
+ ## System description
124
183
 
125
- const create = (context: McpContext<Config, YourFeaturesLayer>) => {
126
- // This automatically adds ALL of your models from features.
127
- mcpModels('yourDomain')(context)
184
+ Under `systemDescription` you set **static metadata** for your system that is included in the start-here response:
128
185
 
129
- return {}
130
- }
186
+ - **description** — Short system description for the AI.
187
+ - **version** — System version string.
188
+
189
+ This is the right place for “what this system is” and version; it does not control which tools exist or what the START_HERE tool includes (that is under `startHere`).
190
+
191
+ Example (partial config):
192
+
193
+ ```typescript
194
+ // /config.base.mts
195
+ import { McpNamespace } from '@node-in-layers/mcp-server'
196
+
197
+ export default () => ({
198
+ // ...
199
+ [McpNamespace]: {
200
+ // ...
201
+ systemDescription: {
202
+ description: 'Order management and billing system for ACME Corp.',
203
+ version: '2.3.0',
204
+ },
205
+ },
206
+ })
131
207
  ```
132
208
 
133
- Another way to organize adding models is from a centralized mcp domain. Put this as your very last domain after all your other domains have been loaded.
209
+ ---
210
+
211
+ ## Start here
212
+
213
+ The **START_HERE** tool is what makes the system navigable: the AI is instructed to call it first (or when the user asks for help). Its response is built from:
214
+
215
+ 1. **System metadata** — `systemName`, `systemDescription`, `systemVersion` from config.
216
+ 2. **Default system entries** — Built-in docs (e.g. “this is a domain-layered system”, “MCP navigation workflow”, “cross-layer props”). You can turn these off with `startHere.hideDefaultSystemEntries`.
217
+ 3. **Optional: include domains / include features** — If `startHere.includeDomains` is true, the response includes the current list of domains (as if `list_domains` had been called). If `startHere.includeFeatures` is true, it also includes the list of features per domain (as if `list_features` had been called for each). So the AI gets domains and/or features **without** making extra tool calls.
218
+ 4. **Examples of use** — Custom entries you add under `startHere.examplesOfUse`. These are where you document **higher-level flows** (e.g. “run feature A, then B, then C”). The built-in docs explain domains, features, and models; they do **not** explain your app-specific sequences. Put those in `examplesOfUse`, as **JSON object examples with minimal prose** so the AI can apply them directly.
219
+
220
+ **Include domains / include features**
221
+ Enabling these is like pre-running `list_domains` and/or `list_features` and embedding the result in START_HERE. The downside is **context size**: for large systems (many tools), that can consume a lot of context and add noise. For **small systems (on the order of 1–10 tools)** it’s usually fine. For larger systems, prefer **examples of use** and let the AI call `list_domains` / `list_features` when needed.
222
+
223
+ Example (partial config):
224
+
225
+ ````typescript
226
+ // /config.base.mts
227
+ import { McpNamespace } from '@node-in-layers/mcp-server'
228
+
229
+ export default () => ({
230
+ // ...
231
+ [McpNamespace]: {
232
+ // ...
233
+ startHere: {
234
+ // Optional: override tool identity
235
+ name: 'START_HERE',
236
+ description:
237
+ 'BEFORE YOU DO ANYTHING, call this first to learn how to navigate the system.',
238
+
239
+ // What to include in the start-here response
240
+ hideDefaultSystemEntries: false, // do we want the ones that come by default? Usually this is yes.
241
+ includeDomains: true, // Should we go ahead and tell it the domains? Commonly this should be true.
242
+ includeFeatures: false, // Should we tell them all the features on the first go? In most cases this should be FALSE. Unless its a small system with few functions.
243
+
244
+ // Higher-level flows through your system
245
+ examplesOfUse: [
246
+ {
247
+ name: 'Create order then fetch it',
248
+ description: 'Typical flow that creates an order and then retrieves it.',
249
+ // Giving ACTUAL examples (json data, + small annotations) works amazingly.
250
+ example: `
251
+ ```markdown
252
+ // 1. Create an order
253
+ { "tool": "execute_feature", "args": { "domain": "orders", "featureName": "createOrder" } }
254
+ // 2. Get the order by id (using the id from step 1)
255
+ { "tool": "execute_feature", "args": { "domain": "orders", "featureName": "getOrderById" } }
256
+ ````
257
+
258
+ `,
259
+ tags: ['orders', 'flow'],
260
+ },
261
+ ],
262
+ },
263
+
264
+ },
265
+ })
266
+
267
+ ````
268
+
269
+ ---
270
+
271
+ ## Extending with custom tools
272
+
273
+ You can add your own MCP tools via the MCP layer using `addTool`. Use this from a layer that has access to `mcp[McpNamespace]` (e.g. after the MCP layer in the stack).
274
+
275
+ Example (conceptual):
134
276
 
135
277
  ```typescript
136
- // /src/mcp/mcp.ts
137
- import { McpContext, McpNamespace, mcpModels } from '@node-in-layers/mcp-server'
138
- import { Config } from '@node-in-layers/core'
139
-
140
- const create = (context: McpContext<Config>) => {
141
- // Add all your models for your whole system in one go.
142
- mcpModels('yourDomain')(context)
143
- mcpModels('yourDomain2')(context)
144
- mcpModels('yourDomain3')(context)
145
- mcpModels('yourDomain4')(context)
146
-
147
- return {}
148
- }
278
+ // In a layer that runs after the MCP layer and has context.mcp[McpNamespace]
279
+ const mcp = context.mcp[McpNamespace]
280
+ mcp.addTool({
281
+ name: 'my_custom_tool',
282
+ description: 'Does something custom',
283
+ inputSchema: { type: 'object', properties: { id: { type: 'string' } }, required: ['id'] },
284
+ outputSchema: { type: 'object' },
285
+ execute: async (input) => ({ result: input.id }),
286
+ })
287
+ ````
288
+
289
+ Your tool is then exposed alongside the built-in domain/feature/model tools.
290
+
291
+ ---
292
+
293
+ ## How to run the server
294
+
295
+ - **start** — Start the MCP server (listens on the connection defined in config).
296
+ `mcp[McpNamespace].start(systemContext, options?)`
297
+ - **getApp** — Get the Express app (for HTTP/SSE) so you can mount it in your own server.
298
+ `mcp[McpNamespace].getApp(options?)`
299
+
300
+ Use **start** when the MCP server is the main process. Use **getApp** when you compose with an existing Express app (e.g. mount the MCP app at a path).
301
+
302
+ ---
303
+
304
+ ## Middleware and routes
305
+
306
+ - **addPreRouteMiddleware(middleware)** — Add Express middleware that runs before MCP route handling.
307
+ - **addAdditionalRoute(route)** — Register an extra Express route (e.g. health or admin) on the same app.
308
+
309
+ Call these during setup (e.g. from a layer that has access to `mcp[McpNamespace]`) before the server is started or the app is used.
310
+
311
+ ---
312
+
313
+ ## Changing logging configuration
314
+
315
+ Logging is configured under the `logging` section of the MCP config. You can control log levels and optionally add structured data to each request/response log entry.
316
+
317
+ - **requestLogLevel** / **responseLogLevel**: Override the default log level (`info`) for incoming requests and outgoing responses.
318
+ - **requestLogGetData(input)**: Function that maps the raw request input into extra data to log.
319
+ - **responseLogGetData(result)**: Function that maps the raw tool result into extra data to log.
320
+
321
+ Example (partial config):
322
+
323
+ ```typescript
324
+ // /config.base.mts
325
+ import { McpNamespace } from '@node-in-layers/mcp-server'
326
+
327
+ export default () => ({
328
+ // ...
329
+ [McpNamespace]: {
330
+ // ...
331
+ logging: {
332
+ // Adjust verbosity
333
+ requestLogLevel: 'debug',
334
+ responseLogLevel: 'info',
335
+
336
+ // Attach additional request information to the log.
337
+ requestLogGetData: (input: Request) => ({
338
+ something: input.something,
339
+ }),
340
+ responseLogGetData: (input: Request) => ({
341
+ // Shape this to your needs; example:
342
+ truncated: true,
343
+ }),
344
+ },
345
+ },
346
+ })
149
347
  ```
348
+
349
+ ---
@@ -1,9 +1,9 @@
1
1
  [
2
2
  {
3
3
  "id": "2e19b8bf-2a4f-4f3c-9b7e-0f10c9e55c01",
4
- "name": "What is a Node-In-Layers (NIL) system?",
4
+ "name": "This is a domain layered system.",
5
5
  "tags": ["intro", "layers", "models"],
6
- "details": "A Node-In-Layers (NIL) system organizes application code into cohesive apps and layered responsibilities. Key default layers: globals (shared config and infra), services (talk to the outside world: DBs, APIs, files), features (business flows orchestrating steps), and entries (starting points like REST, CLI, serverless). Models are first-class: they define validated data structures and, when configured with an ORM, expose CRUDS APIs across services and features. This document focuses on how to navigate and use a NIL system via the MCP server tools."
6
+ "details": "This system is a series of features that are organized into cohesive domains. Each domain can also export CRUDS access to models, if it chooses to. Domains can be listed, features can be listed, described and called, and so can models."
7
7
  },
8
8
  {
9
9
  "id": "7c0c9643-92f4-4603-984d-3a25b9bd3a28",
@@ -80,7 +80,7 @@
80
80
  "id": "a0a1c3cf-7f3f-4e4b-9f1e-2b1a9a7b11aa",
81
81
  "name": "list_domains",
82
82
  "tags": ["mcp", "nil", "discovery"],
83
- "details": "Lists domains available in the system (from NIL features context). Hidden domains are omitted by server policy.",
83
+ "details": "Lists domains shows the domains available for access.",
84
84
  "example": {
85
85
  "request": {
86
86
  "tool": "list_domains",
@@ -99,7 +99,7 @@
99
99
  "id": "f3b7b0d1-0d4e-4a25-9c76-8a7ef0f2d3c2",
100
100
  "name": "list_features",
101
101
  "tags": ["mcp", "nil", "discovery", "features"],
102
- "details": "Lists callable business features for a domain. Use before execute_feature to see options.",
102
+ "details": "Lists callable business features for a domain. Use before execute_feature to get the exact input schema for a feature.",
103
103
  "example": {
104
104
  "request": {
105
105
  "tool": "list_features",
@@ -121,7 +121,7 @@
121
121
  "id": "3f2f4a9a-4d75-41f0-b1a9-3b7f5a223c17",
122
122
  "name": "describe_feature",
123
123
  "tags": ["mcp", "nil", "schema", "features"],
124
- "details": "Returns an OpenAPI-like schema for a feature. If the feature is NIL-annotated, the full schema is derived; otherwise, a generic schema is produced.",
124
+ "details": "Returns an OpenAPI-like schema for a feature.",
125
125
  "example": {
126
126
  "request": {
127
127
  "tool": "describe_feature",
@@ -311,5 +311,11 @@
311
311
  "example": {
312
312
  "markdown": "User asks: \"Reserve 1 unit of ABC-123 if available.\"\n\n1. list_domains {}\n - Choose domain = inventory.\n2. list_features { domain: \"inventory\" } and list_models { domain: \"inventory\" }\n - See feature reserveItem and model Inventories.\n3. describe_feature { domain: \"inventory\", featureName: \"checkItemAvailability\" }\n - Confirm args: { sku: string, quantity: number }.\n4. execute_feature { domain: \"inventory\", featureName: \"checkItemAvailability\", args: { sku: \"ABC-123\", quantity: 1 }, crossLayerProps: { logging: { ids: [{ aiSessionId: \"8c2ab...\" }, { aiRequestId: \"f4c7a...\" }] } } }\n - If available: true -> proceed.\n5. execute_feature { domain: \"inventory\", featureName: \"reserveItem\", args: { sku: \"ABC-123\", quantity: 1, userId: \"u-42\" }, crossLayerProps: { logging: { ids: [{ aiSessionId: \"8c2ab...\" }, { aiRequestId: \"f4c7a...\" }] } } }\n - Returns reservationId.\n"
313
313
  }
314
+ },
315
+ {
316
+ "id": "0a1b2c3d-4e5f-4607-8a90-b1c2d3e4f507",
317
+ "name": "Working with the user",
318
+ "tags": ["user", "interaction"],
319
+ "details": "Unless the user asks for it don't explain Domain/Models of the system to the user. The features are the primary thing the user cares about, and only to the extent that YOU the AI call them. The details about what goes in them, only matters for them to run other features first. Knowing how to call and navigate this interface is YOUR (the AI)'s job."
314
320
  }
315
321
  ]
package/libs.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { NilAnnotatedFunction, Response } from '@node-in-layers/core';
1
+ import { ErrorObject, NilAnnotatedFunction, Response } from '@node-in-layers/core';
2
2
  import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
3
3
  import { JsonAble } from 'functional-models';
4
4
  import { McpServerConfig, OpenApiFunctionDescription } from './types.js';
@@ -35,46 +35,10 @@ export declare const nilAnnotatedFunctionToOpenApi: (name: string, fn: NilAnnota
35
35
  export declare const createMcpResponse: <T extends JsonAble>(result: T, opts?: {
36
36
  isError?: boolean;
37
37
  }) => CallToolResult;
38
- export declare const createDomainNotFoundError: () => Readonly<{
39
- error: Readonly<{
40
- code: string;
41
- message: string;
42
- details?: string | undefined;
43
- data?: Record<string, JsonAble> | undefined;
44
- trace?: string | undefined;
45
- cause?: Readonly<any> | undefined;
46
- }>;
47
- }>;
48
- export declare const createModelNotFoundError: () => Readonly<{
49
- error: Readonly<{
50
- code: string;
51
- message: string;
52
- details?: string | undefined;
53
- data?: Record<string, JsonAble> | undefined;
54
- trace?: string | undefined;
55
- cause?: Readonly<any> | undefined;
56
- }>;
57
- }>;
58
- export declare const createFeatureNotFoundError: () => Readonly<{
59
- error: Readonly<{
60
- code: string;
61
- message: string;
62
- details?: string | undefined;
63
- data?: Record<string, JsonAble> | undefined;
64
- trace?: string | undefined;
65
- cause?: Readonly<any> | undefined;
66
- }>;
67
- }>;
68
- export declare const createModelsNotFoundError: () => Readonly<{
69
- error: Readonly<{
70
- code: string;
71
- message: string;
72
- details?: string | undefined;
73
- data?: Record<string, JsonAble> | undefined;
74
- trace?: string | undefined;
75
- cause?: Readonly<any> | undefined;
76
- }>;
77
- }>;
38
+ export declare const createDomainNotFoundError: () => ErrorObject;
39
+ export declare const createModelNotFoundError: () => ErrorObject;
40
+ export declare const createFeatureNotFoundError: () => ErrorObject;
41
+ export declare const createModelsNotFoundError: () => ErrorObject;
78
42
  export declare const doesDomainNotExist: (context: any) => (domain: string) => boolean;
79
43
  export declare const isDomainHidden: (hiddenPaths: Set<string>, config: McpServerConfig) => (domain: string) => boolean | undefined;
80
44
  export declare const areAllModelsHidden: (hiddenPaths: Set<string>, config: McpServerConfig) => (domain: string) => boolean | undefined;
package/libs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"libs.js","sourceRoot":"","sources":["../src/libs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"libs.js","sourceRoot":"","sources":["../src/libs.ts"],"names":[],"mappings":"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"}
package/models.d.ts CHANGED
@@ -6,58 +6,22 @@ export declare const create: <TConfig extends Readonly<{
6
6
  version?: string | undefined;
7
7
  stateless?: boolean | undefined;
8
8
  server: {
9
- connection: Readonly<{
10
- server: Readonly<{
11
- connection: Readonly<{
12
- type: "http";
13
- url: string;
14
- port?: number | undefined;
15
- headers?: Readonly<Record<string, string>> | undefined;
16
- timeout?: number | undefined;
17
- retry?: Readonly<{
18
- attempts: number;
19
- backoff: number;
20
- }> | undefined;
21
- }>;
22
- path?: string | undefined;
23
- }>;
24
- }> | Readonly<{
25
- server: Readonly<{
26
- connection: {
27
- type: "cli";
28
- };
29
- }>;
30
- }> | Readonly<{
31
- server: Readonly<{
32
- connection: Readonly<{
33
- type: "sse";
34
- url: string;
35
- port?: number | undefined;
36
- }>;
37
- path?: string | undefined;
38
- messagesPath?: string | undefined;
39
- }>;
40
- }> | Readonly<{
41
- server: Readonly<{
42
- connection: Readonly<{
43
- type: "http";
44
- url: string;
45
- port?: number | undefined;
46
- headers?: Readonly<Record<string, string>> | undefined;
47
- timeout?: number | undefined;
48
- retry?: Readonly<{
49
- attempts: number;
50
- backoff: number;
51
- }> | undefined;
52
- }>;
53
- path?: string | undefined;
54
- }>;
55
- stateless: true;
56
- }>;
9
+ connection: import("./types.js").Connection;
57
10
  };
58
11
  startHere?: {
59
- name: string;
60
- description: string;
12
+ name?: string | undefined;
13
+ description?: string | undefined;
14
+ hideDefaultSystemEntries?: boolean | undefined;
15
+ includeDomains?: boolean | undefined;
16
+ includeFeatures?: boolean | undefined;
17
+ examplesOfUse?: readonly Readonly<{
18
+ name: string;
19
+ description?: string | undefined;
20
+ value?: string | undefined;
21
+ tags?: string[] | undefined;
22
+ details?: string | undefined;
23
+ example?: string | undefined;
24
+ }>[] | undefined;
61
25
  } | undefined;
62
26
  hiddenPaths?: string[] | undefined;
63
27
  hideComponents?: {
@@ -68,14 +32,6 @@ export declare const create: <TConfig extends Readonly<{
68
32
  systemDescription?: {
69
33
  description?: string | undefined;
70
34
  version?: string | undefined;
71
- examplesOfUse?: readonly Readonly<{
72
- name: string;
73
- description?: string | undefined;
74
- value?: string | undefined;
75
- tags?: string[] | undefined;
76
- details?: string | undefined;
77
- example?: string | undefined;
78
- }>[] | undefined;
79
35
  } | undefined;
80
36
  logging?: {
81
37
  requestLogLevel?: import("@node-in-layers/core/types.js").LogLevelNames | undefined;
package/nil.d.ts CHANGED
@@ -6,58 +6,22 @@ export declare const create: <TConfig extends Readonly<{
6
6
  version?: string | undefined;
7
7
  stateless?: boolean | undefined;
8
8
  server: {
9
- connection: Readonly<{
10
- server: Readonly<{
11
- connection: Readonly<{
12
- type: "http";
13
- url: string;
14
- port?: number | undefined;
15
- headers?: Readonly<Record<string, string>> | undefined;
16
- timeout?: number | undefined;
17
- retry?: Readonly<{
18
- attempts: number;
19
- backoff: number;
20
- }> | undefined;
21
- }>;
22
- path?: string | undefined;
23
- }>;
24
- }> | Readonly<{
25
- server: Readonly<{
26
- connection: {
27
- type: "cli";
28
- };
29
- }>;
30
- }> | Readonly<{
31
- server: Readonly<{
32
- connection: Readonly<{
33
- type: "sse";
34
- url: string;
35
- port?: number | undefined;
36
- }>;
37
- path?: string | undefined;
38
- messagesPath?: string | undefined;
39
- }>;
40
- }> | Readonly<{
41
- server: Readonly<{
42
- connection: Readonly<{
43
- type: "http";
44
- url: string;
45
- port?: number | undefined;
46
- headers?: Readonly<Record<string, string>> | undefined;
47
- timeout?: number | undefined;
48
- retry?: Readonly<{
49
- attempts: number;
50
- backoff: number;
51
- }> | undefined;
52
- }>;
53
- path?: string | undefined;
54
- }>;
55
- stateless: true;
56
- }>;
9
+ connection: import("./types.js").Connection;
57
10
  };
58
11
  startHere?: {
59
- name: string;
60
- description: string;
12
+ name?: string | undefined;
13
+ description?: string | undefined;
14
+ hideDefaultSystemEntries?: boolean | undefined;
15
+ includeDomains?: boolean | undefined;
16
+ includeFeatures?: boolean | undefined;
17
+ examplesOfUse?: readonly Readonly<{
18
+ name: string;
19
+ description?: string | undefined;
20
+ value?: string | undefined;
21
+ tags?: string[] | undefined;
22
+ details?: string | undefined;
23
+ example?: string | undefined;
24
+ }>[] | undefined;
61
25
  } | undefined;
62
26
  hiddenPaths?: string[] | undefined;
63
27
  hideComponents?: {
@@ -68,14 +32,6 @@ export declare const create: <TConfig extends Readonly<{
68
32
  systemDescription?: {
69
33
  description?: string | undefined;
70
34
  version?: string | undefined;
71
- examplesOfUse?: readonly Readonly<{
72
- name: string;
73
- description?: string | undefined;
74
- value?: string | undefined;
75
- tags?: string[] | undefined;
76
- details?: string | undefined;
77
- example?: string | undefined;
78
- }>[] | undefined;
79
35
  } | undefined;
80
36
  logging?: {
81
37
  requestLogLevel?: import("@node-in-layers/core/types.js").LogLevelNames | undefined;
package/nil.js CHANGED
@@ -7,8 +7,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { createErrorObject, isErrorObject, } from '@node-in-layers/core';
11
- import { createDomainNotFoundError, createMcpResponse, createFeatureNotFoundError, isNilAnnotatedFunction, nilAnnotatedFunctionToOpenApi, createOpenApiForNonNilAnnotatedFunction, isDomainHidden, isFeatureHidden, commonMcpExecute, crossLayerPropsOpenApi, doesDomainNotExist, } from './libs.js';
10
+ import { createErrorObject, isErrorObject, memoizeValueSync, } from '@node-in-layers/core';
11
+ import { createDomainNotFoundError, createMcpResponse, createFeatureNotFoundError, isNilAnnotatedFunction, nilAnnotatedFunctionToOpenApi, createOpenApiForNonNilAnnotatedFunction, isDomainHidden, isFeatureHidden, areAllModelsHidden, isModelHidden, commonMcpExecute, crossLayerPropsOpenApi, doesDomainNotExist, } from './libs.js';
12
12
  import { default as nilSystem } from './docs/node-in-layers-system.json' with { type: 'json' };
13
13
  import { McpNamespace } from './types.js';
14
14
  const describeFeatureMcpTool = () => {
@@ -109,27 +109,76 @@ const listDomainsMcpTool = () => {
109
109
  },
110
110
  };
111
111
  };
112
- export const create = (context) => {
113
- const hiddenPaths = new Set([
112
+ const _listDomains = (context) => {
113
+ const hiddenPaths = _getHiddenPaths(context);
114
+ const doesDomainNotExistFunc = doesDomainNotExist(context);
115
+ const isDomainHiddenFunc = isDomainHidden(hiddenPaths, context.config);
116
+ const areAllModelsHiddenFunc = areAllModelsHidden(hiddenPaths, context.config);
117
+ const isModelHiddenFunc = isModelHidden(hiddenPaths, context.config);
118
+ return Object.entries(context.features).reduce((acc, [domainName]) => {
119
+ var _a, _b, _c;
120
+ if (doesDomainNotExistFunc(domainName) ||
121
+ isDomainHiddenFunc(domainName)) {
122
+ return acc;
123
+ }
124
+ const featuresResult = _listFeaturesOfDomain(context, domainName);
125
+ const hasExposedFeatures = !isErrorObject(featuresResult) && featuresResult.length > 0;
126
+ const cruds = (_a = context.features[domainName]) === null || _a === void 0 ? void 0 : _a.cruds;
127
+ const hasExposedModels = !((_b = context.config[McpNamespace].hideComponents) === null || _b === void 0 ? void 0 : _b.allModels) &&
128
+ Boolean(cruds) &&
129
+ !areAllModelsHiddenFunc(domainName) &&
130
+ Object.keys(cruds !== null && cruds !== void 0 ? cruds : {}).some(modelName => !isModelHiddenFunc(domainName, modelName));
131
+ if (!hasExposedFeatures && !hasExposedModels) {
132
+ return acc;
133
+ }
134
+ const description = (_c = context.config['@node-in-layers/core'].apps.find(app => app.name === domainName)) === null || _c === void 0 ? void 0 : _c.description;
135
+ return acc.concat(Object.assign({ name: domainName }, (description ? { description } : {})));
136
+ }, []);
137
+ };
138
+ const _listFeaturesOfDomain = (context, domain) => {
139
+ const hiddenPaths = _getHiddenPaths(context);
140
+ const doesDomainNotExistFunc = doesDomainNotExist(context);
141
+ const isFeatureHiddenFunc = isFeatureHidden(hiddenPaths, context.config);
142
+ const isDomainHiddenFunc = isDomainHidden(hiddenPaths, context.config);
143
+ if (doesDomainNotExistFunc(domain) || isDomainHiddenFunc(domain)) {
144
+ const e = createDomainNotFoundError();
145
+ return e;
146
+ }
147
+ const features = context.features;
148
+ if (!features || !context.features[domain]) {
149
+ return [];
150
+ }
151
+ return Object.entries(features[domain]).reduce((acc, [featureName, feature]) => {
152
+ var _a;
153
+ if (typeof feature !== 'function') {
154
+ return acc;
155
+ }
156
+ if (isFeatureHiddenFunc(domain, featureName)) {
157
+ return acc;
158
+ }
159
+ const obj = Object.assign({ name: featureName }, (((_a = feature.schema) === null || _a === void 0 ? void 0 : _a.description)
160
+ ? // @ts-ignore
161
+ { description: feature.schema.description }
162
+ : {}));
163
+ return acc.concat(obj);
164
+ }, []);
165
+ };
166
+ const _getHiddenPaths = memoizeValueSync((context) => {
167
+ return new Set([
114
168
  '@node-in-layers/core',
115
169
  '@node-in-layers/data',
116
170
  '@node-in-layers/mcp-server',
117
171
  ...(context.config[McpNamespace].hiddenPaths || []),
118
172
  ]);
173
+ });
174
+ export const create = (context) => {
175
+ const hiddenPaths = _getHiddenPaths(context);
119
176
  const doesDomainNotExistFunc = doesDomainNotExist(context);
120
177
  const isDomainHiddenFunc = isDomainHidden(hiddenPaths, context.config);
121
178
  const isFeatureHiddenFunc = isFeatureHidden(hiddenPaths, context.config);
122
179
  const _listDomainsTool = () => {
123
180
  return Object.assign(Object.assign({}, listDomainsMcpTool()), { execute: commonMcpExecute(() => __awaiter(void 0, void 0, void 0, function* () {
124
- const domains = Object.entries(context.features).reduce((acc, [domainName]) => {
125
- var _a;
126
- if (doesDomainNotExistFunc(domainName) ||
127
- isDomainHiddenFunc(domainName)) {
128
- return acc;
129
- }
130
- const description = (_a = context.config['@node-in-layers/core'].apps.find(app => app.name === domainName)) === null || _a === void 0 ? void 0 : _a.description;
131
- return acc.concat(Object.assign({ name: domainName }, (description ? { description } : {})));
132
- }, []);
181
+ const domains = _listDomains(context);
133
182
  return createMcpResponse(domains);
134
183
  })) });
135
184
  };
@@ -154,28 +203,11 @@ export const create = (context) => {
154
203
  const _listFeaturesTool = () => {
155
204
  return Object.assign(Object.assign({}, listFeaturesMcpTool()), { execute: commonMcpExecute((input) => __awaiter(void 0, void 0, void 0, function* () {
156
205
  const domain = input.domain;
157
- if (doesDomainNotExistFunc(domain) || isDomainHiddenFunc(domain)) {
158
- return createDomainNotFoundError();
206
+ const features = _listFeaturesOfDomain(context, domain);
207
+ if (isErrorObject(features)) {
208
+ return features;
159
209
  }
160
- const features = context.features;
161
- if (!features || !context.features[domain]) {
162
- return createMcpResponse({ features: [] });
163
- }
164
- const result = Object.entries(features[domain]).reduce((acc, [featureName, feature]) => {
165
- var _a;
166
- if (typeof feature !== 'function') {
167
- return acc;
168
- }
169
- if (isFeatureHiddenFunc(domain, featureName)) {
170
- return acc;
171
- }
172
- const obj = Object.assign({ name: featureName }, (((_a = feature.schema) === null || _a === void 0 ? void 0 : _a.description)
173
- ? // @ts-ignore
174
- { description: feature.schema.description }
175
- : {}));
176
- return acc.concat(obj);
177
- }, []);
178
- return createMcpResponse(result);
210
+ return createMcpResponse({ features });
179
211
  })) });
180
212
  };
181
213
  const _executeFeatureTool = () => {
@@ -200,23 +232,64 @@ export const create = (context) => {
200
232
  })) });
201
233
  };
202
234
  const startHereMcpTool = () => {
203
- const startHereData = context.config[McpNamespace].startHere || {
204
- name: 'START_HERE',
205
- description: 'BEFORE YOU DO ANYTHING, you should call this tool first!!! It provides a robust description about the system and how to use it.',
206
- };
235
+ var _a, _b, _c;
236
+ const startHereData = (_a = context.config[McpNamespace].startHere) !== null && _a !== void 0 ? _a : {};
207
237
  return {
208
- name: startHereData.name,
209
- description: startHereData.description,
238
+ name: (_b = startHereData.name) !== null && _b !== void 0 ? _b : 'START_HERE',
239
+ description: (_c = startHereData.description) !== null && _c !== void 0 ? _c : 'BEFORE YOU DO ANYTHING, you should call this tool first!!! It provides a robust description about the system and how to use it.',
210
240
  inputSchema: { type: 'object', properties: {}, required: [] },
211
241
  // @ts-ignore
212
242
  outputSchema: { type: 'object', additionalProperties: true },
213
243
  };
214
244
  };
245
+ const _getSystemEntries = () => {
246
+ var _a;
247
+ const startHereConfig = context.config[McpNamespace].startHere;
248
+ const shouldHideAlltogether = startHereConfig === null || startHereConfig === void 0 ? void 0 : startHereConfig.hideDefaultSystemEntries;
249
+ if (shouldHideAlltogether) {
250
+ return [];
251
+ }
252
+ if ((_a = context.config[McpNamespace].hideComponents) === null || _a === void 0 ? void 0 : _a.allModels) {
253
+ return nilSystem.filter(x => !x.name.startsWith('Model CRUD'));
254
+ }
255
+ return nilSystem;
256
+ };
257
+ const _getDomainsSystemEntry = () => {
258
+ const startHereConfig = context.config[McpNamespace].startHere;
259
+ const includeDomains = startHereConfig === null || startHereConfig === void 0 ? void 0 : startHereConfig.includeDomains;
260
+ if (includeDomains) {
261
+ return [
262
+ {
263
+ name: 'List of Domains',
264
+ description: 'A list of all the domains on the system. This is the output of the list_domains tool.',
265
+ domains: _listDomains(context),
266
+ },
267
+ ];
268
+ }
269
+ return [];
270
+ };
271
+ const _getListFeaturesSystemEntries = () => {
272
+ const startHereConfig = context.config[McpNamespace].startHere;
273
+ const includeFeatures = startHereConfig === null || startHereConfig === void 0 ? void 0 : startHereConfig.includeFeatures;
274
+ if (includeFeatures) {
275
+ const domains = _listDomains(context);
276
+ return domains.map(domain => {
277
+ return {
278
+ name: `List of Features for ${domain.name}`,
279
+ description: `A list of all the features for the ${domain.name} domain. This is the output of the list_features tool for the ${domain.name} domain. You will still need to call describe_feature to get the schema of a given feature.`,
280
+ features: _listFeaturesOfDomain(context, domain.name),
281
+ };
282
+ });
283
+ }
284
+ return [];
285
+ };
215
286
  const _startHereTool = () => {
216
287
  return Object.assign(Object.assign({}, startHereMcpTool()), { execute: commonMcpExecute(() => __awaiter(void 0, void 0, void 0, function* () {
217
288
  const systemDescription = context.config[McpNamespace].systemDescription;
289
+ const startHereConfig = context.config[McpNamespace].startHere;
290
+ const examplesOfUse = (startHereConfig === null || startHereConfig === void 0 ? void 0 : startHereConfig.examplesOfUse) || [];
218
291
  const systemName = context.config.systemName;
219
- const systemEntries = nilSystem;
292
+ const systemEntries = _getSystemEntries();
220
293
  const systemNameExample = {
221
294
  name: 'systemName',
222
295
  value: systemName,
@@ -233,8 +306,10 @@ export const create = (context) => {
233
306
  systemNameExample,
234
307
  systemDescriptionExample,
235
308
  systemVersionExample,
236
- ...((systemDescription === null || systemDescription === void 0 ? void 0 : systemDescription.examplesOfUse) || []),
309
+ ...examplesOfUse,
237
310
  ...systemEntries,
311
+ ..._getDomainsSystemEntry(),
312
+ ..._getListFeaturesSystemEntries(),
238
313
  ];
239
314
  return createMcpResponse({
240
315
  entries,
package/nil.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"nil.js","sourceRoot":"","sources":["../src/nil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nil.js","sourceRoot":"","sources":["../src/nil.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@node-in-layers/mcp-server",
3
3
  "type": "module",
4
- "version": "2.3.1",
4
+ "version": "2.4.0",
5
5
  "description": "An MCP Server Node In Layers Package, generated by the Node In Layers Toolkit.",
6
6
  "main": "index.js",
7
7
  "scripts": {
package/types.d.ts CHANGED
@@ -4,7 +4,11 @@ import { ServerHttpConfig, ServerCliConfig, ServerSseConfig, ServerStatelessHttp
4
4
  import { Config, LogLevelNames, LayerContext } from '@node-in-layers/core';
5
5
  import { Express } from 'express';
6
6
  import { JsonAble } from 'functional-models';
7
- type Connection = ServerHttpConfig | ServerCliConfig | ServerSseConfig | ServerStatelessHttpConfig;
7
+ export type HttpConnection = ServerHttpConfig['server'];
8
+ export type CliConnection = ServerCliConfig['server'];
9
+ export type SseConnection = ServerSseConfig['server'];
10
+ export type StatelessHttpConnection = ServerStatelessHttpConfig['server'];
11
+ export type Connection = ServerHttpConfig | ServerCliConfig | ServerSseConfig | ServerStatelessHttpConfig;
8
12
  export type SystemUseExample = Readonly<{
9
13
  name: string;
10
14
  description?: string;
@@ -41,17 +45,33 @@ export type McpServerConfig = Readonly<{
41
45
  connection: Connection;
42
46
  };
43
47
  /**
44
- * Overrides for the start here tool.
48
+ * Configuration for the start-here tool (name, description, and what to include in its response).
45
49
  */
46
50
  startHere?: {
47
51
  /**
48
52
  * Overrides the name of the tool. Default: 'START_HERE'
49
53
  */
50
- name: string;
54
+ name?: string;
51
55
  /**
52
56
  * Overrides the description of the tool.
53
57
  */
54
- description: string;
58
+ description?: string;
59
+ /**
60
+ * Completely hides default system entries (built-in navigation docs). Generally not recommended.
61
+ */
62
+ hideDefaultSystemEntries?: boolean;
63
+ /**
64
+ * When true, the start-here response includes the list of domains (as if list_domains had been called).
65
+ */
66
+ includeDomains?: boolean;
67
+ /**
68
+ * When true, the start-here response includes the list of features per domain (as if list_features had been called). Implies includeDomains.
69
+ */
70
+ includeFeatures?: boolean;
71
+ /**
72
+ * Custom examples of use (flows) shown in the start-here response. Prefer JSON object examples with minimal annotation.
73
+ */
74
+ examplesOfUse?: ReadonlyArray<SystemUseExample>;
55
75
  };
56
76
  /**
57
77
  * (Deprecated) Dot paths, to hide from the server.
@@ -82,13 +102,11 @@ export type McpServerConfig = Readonly<{
82
102
  allModels?: boolean;
83
103
  };
84
104
  /**
85
- * Ability to set information about the system so that it can be fed to AI consumers.
86
- *
105
+ * Static system metadata shown in the start-here response (description, version).
87
106
  */
88
107
  systemDescription?: {
89
108
  description?: string;
90
109
  version?: string;
91
- examplesOfUse?: ReadonlyArray<SystemUseExample>;
92
110
  };
93
111
  /**
94
112
  * Logging configuration.
@@ -141,4 +159,3 @@ export type OpenApiFunctionDescription = Readonly<{
141
159
  input: Record<string, JsonAble>;
142
160
  output: Record<string, JsonAble>;
143
161
  }>;
144
- export {};
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAgIA,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAA"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAmJA,MAAM,CAAC,MAAM,YAAY,GAAG,4BAA4B,CAAA"}