@jrmc/adonis-mcp 1.0.0-alpha.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/LICENSE +21 -0
- package/README.md +7 -0
- package/build/commands/commands.json +1 -0
- package/build/commands/main.d.ts +4 -0
- package/build/commands/main.js +36 -0
- package/build/commands/make/prompt.d.ts +14 -0
- package/build/commands/make/prompt.d.ts.map +1 -0
- package/build/commands/make/prompt.js +30 -0
- package/build/commands/make/resource.d.ts +14 -0
- package/build/commands/make/resource.d.ts.map +1 -0
- package/build/commands/make/resource.js +30 -0
- package/build/commands/make/tool.d.ts +14 -0
- package/build/commands/make/tool.d.ts.map +1 -0
- package/build/commands/make/tool.js +30 -0
- package/build/configure.d.ts +9 -0
- package/build/configure.d.ts.map +1 -0
- package/build/configure.js +21 -0
- package/build/index.d.ts +2 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +1 -0
- package/build/providers/mcp_provider.d.ts +29 -0
- package/build/providers/mcp_provider.d.ts.map +1 -0
- package/build/providers/mcp_provider.js +64 -0
- package/build/src/controllers/mcp_controller.d.ts +13 -0
- package/build/src/controllers/mcp_controller.d.ts.map +1 -0
- package/build/src/controllers/mcp_controller.js +70 -0
- package/build/src/define_config.d.ts +9 -0
- package/build/src/define_config.d.ts.map +1 -0
- package/build/src/define_config.js +12 -0
- package/build/src/mcp.d.ts +22 -0
- package/build/src/mcp.d.ts.map +1 -0
- package/build/src/mcp.js +32 -0
- package/build/src/types.d.ts +49 -0
- package/build/src/types.d.ts.map +1 -0
- package/build/src/types.js +8 -0
- package/build/stubs/config.ts.stub +8 -0
- package/build/stubs/main.d.ts +2 -0
- package/build/stubs/main.d.ts.map +1 -0
- package/build/stubs/main.js +2 -0
- package/build/stubs/make/mcp/prompts/main.ts.stub +27 -0
- package/build/stubs/make/mcp/resources/main.ts.stub +29 -0
- package/build/stubs/make/mcp/tools/main.ts.stub +19 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/package.json +62 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Jeremy Chaufourier
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# @jrmc/adonis-mcp
|
|
2
|
+
|
|
3
|
+
[](https://badge.fury.io/js/%40jrmc%2Fadonis-mcp)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
AdonisJS MCP - Server MCP for your AdonisJS applications.
|
|
7
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"commands":[{"commandName":"make:mcp-prompt","description":"Create a new MCP prompt","help":"","namespace":"make","aliases":[],"flags":[],"args":[{"name":"name","argumentName":"name","required":true,"description":"Name of the prompt","type":"string"}],"options":{},"filePath":"make/prompt.js"},{"commandName":"make:mcp-resource","description":"Create a new MCP resource","help":"","namespace":"make","aliases":[],"flags":[],"args":[{"name":"name","argumentName":"name","required":true,"description":"Name of the resource","type":"string"}],"options":{},"filePath":"make/resource.js"},{"commandName":"make:mcp-tool","description":"Create a new MCP tool","help":"","namespace":"make","aliases":[],"flags":[],"args":[{"name":"name","argumentName":"name","required":true,"description":"Name of the tool","type":"string"}],"options":{},"filePath":"make/tool.js"}],"version":1}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { readFile } from 'node:fs/promises'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* In-memory cache of commands after they have been loaded
|
|
5
|
+
*/
|
|
6
|
+
let commandsMetaData
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Reads the commands from the "./commands.json" file. Since, the commands.json
|
|
10
|
+
* file is generated automatically, we do not have to validate its contents
|
|
11
|
+
*/
|
|
12
|
+
export async function getMetaData() {
|
|
13
|
+
if (commandsMetaData) {
|
|
14
|
+
return commandsMetaData
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const commandsIndex = await readFile(new URL('./commands.json', import.meta.url), 'utf-8')
|
|
18
|
+
commandsMetaData = JSON.parse(commandsIndex).commands
|
|
19
|
+
|
|
20
|
+
return commandsMetaData
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Imports the command by lookingup its path from the commands
|
|
25
|
+
* metadata
|
|
26
|
+
*/
|
|
27
|
+
export async function getCommand(metaData) {
|
|
28
|
+
const commands = await getMetaData()
|
|
29
|
+
const command = commands.find(({ commandName }) => metaData.commandName === commandName)
|
|
30
|
+
if (!command) {
|
|
31
|
+
return null
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const { default: commandConstructor } = await import(new URL(command.filePath, import.meta.url).href)
|
|
35
|
+
return commandConstructor
|
|
36
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { BaseCommand } from '@adonisjs/core/ace';
|
|
8
|
+
export default class MakePrompt extends BaseCommand {
|
|
9
|
+
static commandName: string;
|
|
10
|
+
static description: string;
|
|
11
|
+
name: string;
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../commands/make/prompt.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAItD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,WAAW,SAAoB;IACtC,MAAM,CAAC,WAAW,SAA4B;IAGtC,IAAI,EAAE,MAAM,CAAA;IAEd,GAAG;CAUV"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
8
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
10
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
12
|
+
};
|
|
13
|
+
import { args, BaseCommand } from '@adonisjs/core/ace';
|
|
14
|
+
import string from '@adonisjs/core/helpers/string';
|
|
15
|
+
import { stubsRoot } from '../../stubs/main.js';
|
|
16
|
+
export default class MakePrompt extends BaseCommand {
|
|
17
|
+
static commandName = 'make:mcp-prompt';
|
|
18
|
+
static description = 'Create a new MCP prompt';
|
|
19
|
+
async run() {
|
|
20
|
+
const codemods = await this.createCodemods();
|
|
21
|
+
const stubPath = `make/mcp/prompts/main.ts.stub`;
|
|
22
|
+
await codemods.makeUsingStub(stubsRoot, stubPath, {
|
|
23
|
+
className: `${string.snakeCase(this.name)}Prompt`
|
|
24
|
+
});
|
|
25
|
+
this.logger.success(`Prompt created successfully for: ${this.name}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__decorate([
|
|
29
|
+
args.string({ description: 'Name of the prompt' })
|
|
30
|
+
], MakePrompt.prototype, "name", void 0);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { BaseCommand } from '@adonisjs/core/ace';
|
|
8
|
+
export default class MakeResource extends BaseCommand {
|
|
9
|
+
static commandName: string;
|
|
10
|
+
static description: string;
|
|
11
|
+
name: string;
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=resource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource.d.ts","sourceRoot":"","sources":["../../../commands/make/resource.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAItD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IACnD,MAAM,CAAC,WAAW,SAAsB;IACxC,MAAM,CAAC,WAAW,SAA8B;IAGxC,IAAI,EAAE,MAAM,CAAA;IAEd,GAAG;CAUV"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
8
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
10
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
12
|
+
};
|
|
13
|
+
import { args, BaseCommand } from '@adonisjs/core/ace';
|
|
14
|
+
import string from '@adonisjs/core/helpers/string';
|
|
15
|
+
import { stubsRoot } from '../../stubs/main.js';
|
|
16
|
+
export default class MakeResource extends BaseCommand {
|
|
17
|
+
static commandName = 'make:mcp-resource';
|
|
18
|
+
static description = 'Create a new MCP resource';
|
|
19
|
+
async run() {
|
|
20
|
+
const codemods = await this.createCodemods();
|
|
21
|
+
const stubPath = `make/mcp/resources/main.ts.stub`;
|
|
22
|
+
await codemods.makeUsingStub(stubsRoot, stubPath, {
|
|
23
|
+
className: `${string.snakeCase(this.name)}Resource`
|
|
24
|
+
});
|
|
25
|
+
this.logger.success(`Resource created successfully for: ${this.name}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__decorate([
|
|
29
|
+
args.string({ description: 'Name of the resource' })
|
|
30
|
+
], MakeResource.prototype, "name", void 0);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { BaseCommand } from '@adonisjs/core/ace';
|
|
8
|
+
export default class MakeTool extends BaseCommand {
|
|
9
|
+
static commandName: string;
|
|
10
|
+
static description: string;
|
|
11
|
+
name: string;
|
|
12
|
+
run(): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../../commands/make/tool.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAQ,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAItD,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,WAAW;IAC/C,MAAM,CAAC,WAAW,SAAkB;IACpC,MAAM,CAAC,WAAW,SAA0B;IAGpC,IAAI,EAAE,MAAM,CAAA;IAEd,GAAG;CAUV"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
8
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
10
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
11
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
12
|
+
};
|
|
13
|
+
import { args, BaseCommand } from '@adonisjs/core/ace';
|
|
14
|
+
import string from '@adonisjs/core/helpers/string';
|
|
15
|
+
import { stubsRoot } from '../../stubs/main.js';
|
|
16
|
+
export default class MakeTool extends BaseCommand {
|
|
17
|
+
static commandName = 'make:mcp-tool';
|
|
18
|
+
static description = 'Create a new MCP tool';
|
|
19
|
+
async run() {
|
|
20
|
+
const codemods = await this.createCodemods();
|
|
21
|
+
const stubPath = `make/mcp/tools/main.ts.stub`;
|
|
22
|
+
await codemods.makeUsingStub(stubsRoot, stubPath, {
|
|
23
|
+
className: `${string.snakeCase(this.name)}Tool`
|
|
24
|
+
});
|
|
25
|
+
this.logger.success(`Tool created successfully for: ${this.name}`);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
__decorate([
|
|
29
|
+
args.string({ description: 'Name of the tool' })
|
|
30
|
+
], MakeTool.prototype, "name", void 0);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type Configure from '@adonisjs/core/commands/configure';
|
|
8
|
+
export declare function configure(command: Configure): Promise<void>;
|
|
9
|
+
//# sourceMappingURL=configure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configure.d.ts","sourceRoot":"","sources":["../configure.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,SAAS,MAAM,mCAAmC,CAAA;AAG9D,wBAAsB,SAAS,CAAC,OAAO,EAAE,SAAS,iBAejD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { stubsRoot } from './stubs/main.js';
|
|
8
|
+
export async function configure(command) {
|
|
9
|
+
const codemods = await command.createCodemods();
|
|
10
|
+
/**
|
|
11
|
+
* Create default config file
|
|
12
|
+
*/
|
|
13
|
+
await codemods.makeUsingStub(stubsRoot, 'config.ts.stub', {});
|
|
14
|
+
/**
|
|
15
|
+
* Register provider
|
|
16
|
+
*/
|
|
17
|
+
await codemods.updateRcFile((rcFile) => {
|
|
18
|
+
rcFile.addProvider('@jrmc/adonis-mcp/mcp_provider');
|
|
19
|
+
rcFile.addCommand('@jrmc/adonis-mcp/commands');
|
|
20
|
+
});
|
|
21
|
+
}
|
package/build/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA"}
|
package/build/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { configure } from './configure.js';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type { ApplicationService } from '@adonisjs/core/types';
|
|
8
|
+
import type { RouteGroup } from '@adonisjs/core/http';
|
|
9
|
+
import Mcp from '../src/mcp.js';
|
|
10
|
+
export default class McpProvider {
|
|
11
|
+
protected app: ApplicationService;
|
|
12
|
+
constructor(app: ApplicationService);
|
|
13
|
+
register(): void;
|
|
14
|
+
start(): Promise<void>;
|
|
15
|
+
registerTools(): Promise<void>;
|
|
16
|
+
registerResources(): Promise<void>;
|
|
17
|
+
registerPrompts(): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
declare module '@adonisjs/core/http' {
|
|
20
|
+
interface Router {
|
|
21
|
+
mcp: (pattern?: string) => RouteGroup;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
declare module '@adonisjs/core/types' {
|
|
25
|
+
interface ContainerBindings {
|
|
26
|
+
'jrmc.mcp': Mcp;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=mcp_provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp_provider.d.ts","sourceRoot":"","sources":["../../providers/mcp_provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAIrD,OAAO,GAAG,MAAM,eAAe,CAAA;AAE/B,MAAM,CAAC,OAAO,OAAO,WAAW;IAClB,SAAS,CAAC,GAAG,EAAE,kBAAkB;gBAAvB,GAAG,EAAE,kBAAkB;IAE7C,QAAQ;IAOF,KAAK;IAiBL,aAAa;IAab,iBAAiB;IAajB,eAAe;CAYtB;AAED,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,MAAM;QACd,GAAG,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,UAAU,CAAA;KACtC;CACF;AAED,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,iBAAiB;QACzB,UAAU,EAAE,GAAG,CAAA;KAChB;CACF"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { fsImportAll } from '@adonisjs/core/helpers';
|
|
8
|
+
import Mcp from '../src/mcp.js';
|
|
9
|
+
export default class McpProvider {
|
|
10
|
+
app;
|
|
11
|
+
constructor(app) {
|
|
12
|
+
this.app = app;
|
|
13
|
+
}
|
|
14
|
+
register() {
|
|
15
|
+
this.app.container.singleton('jrmc.mcp', async () => {
|
|
16
|
+
const config = this.app.config.get('mcp', {});
|
|
17
|
+
return new Mcp(config);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
async start() {
|
|
21
|
+
const router = await this.app.container.make('router');
|
|
22
|
+
const McpController = () => import('../src/controllers/mcp_controller.js');
|
|
23
|
+
router.mcp = (pattern = '/mcp') => {
|
|
24
|
+
return router.group(() => {
|
|
25
|
+
router.get(pattern, [McpController, 'get']);
|
|
26
|
+
router.post(pattern, [McpController, 'post']);
|
|
27
|
+
router.delete(pattern, [McpController, 'delete']);
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
await this.registerTools();
|
|
31
|
+
await this.registerResources();
|
|
32
|
+
await this.registerPrompts();
|
|
33
|
+
}
|
|
34
|
+
async registerTools() {
|
|
35
|
+
const mcp = await this.app.container.make('jrmc.mcp');
|
|
36
|
+
const collection = await fsImportAll(new URL(this.app.makePath(mcp.config.path), import.meta.url), {
|
|
37
|
+
filter: (filePath) => filePath.includes('_tool.ts')
|
|
38
|
+
});
|
|
39
|
+
Object.values(collection).map((item) => {
|
|
40
|
+
const toolMcp = new item();
|
|
41
|
+
mcp.getServer().registerTool(toolMcp.name, toolMcp.config, toolMcp.handle);
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
async registerResources() {
|
|
45
|
+
const mcp = await this.app.container.make('jrmc.mcp');
|
|
46
|
+
const collection = await fsImportAll(new URL(this.app.makePath(mcp.config.path), import.meta.url), {
|
|
47
|
+
filter: (filePath) => filePath.includes('_resource.ts')
|
|
48
|
+
});
|
|
49
|
+
Object.values(collection).map((item) => {
|
|
50
|
+
const resourceMcp = new item();
|
|
51
|
+
mcp.getServer().registerResource(resourceMcp.name, resourceMcp.uriOrTemplate, resourceMcp.config, resourceMcp.handle);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
async registerPrompts() {
|
|
55
|
+
const mcp = await this.app.container.make('jrmc.mcp');
|
|
56
|
+
const collection = await fsImportAll(new URL(this.app.makePath(mcp.config.path), import.meta.url), {
|
|
57
|
+
filter: (filePath) => filePath.includes('_prompt.ts')
|
|
58
|
+
});
|
|
59
|
+
Object.values(collection).map((item) => {
|
|
60
|
+
const promptMcp = new item();
|
|
61
|
+
mcp.getServer().registerPrompt(promptMcp.name, promptMcp.config, promptMcp.handle);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type { HttpContext } from '@adonisjs/core/http';
|
|
8
|
+
export default class McpController {
|
|
9
|
+
post(ctx: HttpContext): Promise<void>;
|
|
10
|
+
get(ctx: HttpContext): Promise<void>;
|
|
11
|
+
delete(ctx: HttpContext): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=mcp_controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp_controller.d.ts","sourceRoot":"","sources":["../../../src/controllers/mcp_controller.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAKtD,MAAM,CAAC,OAAO,OAAO,aAAa;IAC1B,IAAI,CAAC,GAAG,EAAE,WAAW;IAuCrB,GAAG,CAAC,GAAG,EAAE,WAAW;IAepB,MAAM,CAAC,GAAG,EAAE,WAAW;CAa9B"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
8
|
+
import { isInitializeRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
9
|
+
import { randomUUID } from 'node:crypto';
|
|
10
|
+
export default class McpController {
|
|
11
|
+
async post(ctx) {
|
|
12
|
+
const req = ctx.request.request;
|
|
13
|
+
const res = ctx.response.response;
|
|
14
|
+
const mcp = await ctx.containerResolver.make('jrmc.mcp');
|
|
15
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
16
|
+
let transport;
|
|
17
|
+
const server = mcp.getServer();
|
|
18
|
+
if (sessionId && mcp.get(sessionId)) {
|
|
19
|
+
transport = mcp.get(sessionId);
|
|
20
|
+
}
|
|
21
|
+
else if (!sessionId && isInitializeRequest(ctx.request.body())) {
|
|
22
|
+
transport = new StreamableHTTPServerTransport({
|
|
23
|
+
sessionIdGenerator: () => randomUUID(),
|
|
24
|
+
onsessioninitialized: (sId) => {
|
|
25
|
+
mcp.add(sId, transport);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
transport.onclose = () => {
|
|
29
|
+
if (transport.sessionId) {
|
|
30
|
+
mcp.delete(transport.sessionId);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
await server.connect(transport);
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
return ctx.response.status(400).json({
|
|
37
|
+
jsonrpc: '2.0',
|
|
38
|
+
error: {
|
|
39
|
+
code: -32000,
|
|
40
|
+
message: 'Bad Request: No valid session ID provided',
|
|
41
|
+
},
|
|
42
|
+
id: null,
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
await transport.handleRequest(req, res, ctx.request.body());
|
|
46
|
+
}
|
|
47
|
+
async get(ctx) {
|
|
48
|
+
const req = ctx.request.request;
|
|
49
|
+
const res = ctx.response.response;
|
|
50
|
+
const mcp = await ctx.containerResolver.make('jrmc.mcp');
|
|
51
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
52
|
+
req.headers['Authorization'] = req.headers['Authorization'];
|
|
53
|
+
if (!sessionId || !mcp.get(sessionId)) {
|
|
54
|
+
return ctx.response.status(400).send('Invalid or missing session ID');
|
|
55
|
+
}
|
|
56
|
+
const transport = mcp.get(sessionId);
|
|
57
|
+
await transport.handleRequest(req, res);
|
|
58
|
+
}
|
|
59
|
+
async delete(ctx) {
|
|
60
|
+
const req = ctx.request.request;
|
|
61
|
+
const res = ctx.response.response;
|
|
62
|
+
const mcp = await ctx.containerResolver.make('jrmc.mcp');
|
|
63
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
64
|
+
if (!sessionId || !mcp.get(sessionId)) {
|
|
65
|
+
return ctx.response.status(400).send('Invalid or missing session ID');
|
|
66
|
+
}
|
|
67
|
+
const transport = mcp.get(sessionId);
|
|
68
|
+
await transport.handleRequest(req, res);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type { McpConfig } from './types.js';
|
|
8
|
+
export declare function defineConfig<T extends McpConfig>(config: T): T;
|
|
9
|
+
//# sourceMappingURL=define_config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"define_config.d.ts","sourceRoot":"","sources":["../../src/define_config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,wBAAgB,YAAY,CAAC,CAAC,SAAS,SAAS,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAK9D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type { McpConfig } from './types.js';
|
|
8
|
+
import type { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
9
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
10
|
+
export default class Mcp {
|
|
11
|
+
#private;
|
|
12
|
+
transports: {
|
|
13
|
+
[sessionId: string]: StreamableHTTPServerTransport;
|
|
14
|
+
};
|
|
15
|
+
config: McpConfig;
|
|
16
|
+
constructor(config: McpConfig);
|
|
17
|
+
add(sessionId: string, transport: StreamableHTTPServerTransport): void;
|
|
18
|
+
delete(sessionId: string): void;
|
|
19
|
+
get(sessionId: string): StreamableHTTPServerTransport;
|
|
20
|
+
getServer(): McpServer;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAC3C,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAA;AACvG,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,MAAM,CAAC,OAAO,OAAO,GAAG;;IACtB,UAAU,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,6BAA6B,CAAA;KAAE,CAAK;IAEvE,MAAM,EAAE,SAAS,CAAA;gBAEL,MAAM,EAAE,SAAS;IAS7B,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,6BAA6B;IAI/D,MAAM,CAAC,SAAS,EAAE,MAAM;IAIxB,GAAG,CAAC,SAAS,EAAE,MAAM;IAIrB,SAAS;CAGV"}
|
package/build/src/mcp.js
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
8
|
+
export default class Mcp {
|
|
9
|
+
transports = {};
|
|
10
|
+
#server;
|
|
11
|
+
config;
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.config = config;
|
|
14
|
+
this.#server = new McpServer({
|
|
15
|
+
name: 'adonis-mcp-server',
|
|
16
|
+
version: '1.0.0',
|
|
17
|
+
...this.config.serverOptions,
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
add(sessionId, transport) {
|
|
21
|
+
this.transports[sessionId] = transport;
|
|
22
|
+
}
|
|
23
|
+
delete(sessionId) {
|
|
24
|
+
delete this.transports[sessionId];
|
|
25
|
+
}
|
|
26
|
+
get(sessionId) {
|
|
27
|
+
return this.transports[sessionId];
|
|
28
|
+
}
|
|
29
|
+
getServer() {
|
|
30
|
+
return this.#server;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @jrmc/adonis-mcp
|
|
3
|
+
*
|
|
4
|
+
* @license MIT
|
|
5
|
+
* @copyright Jeremy Chaufourier <jeremy@chaufourier.fr>
|
|
6
|
+
*/
|
|
7
|
+
import type { ZodRawShape, ZodType, ZodTypeDef, ZodOptional, ZodTypeAny, z } from 'zod';
|
|
8
|
+
import type { ResourceMetadata } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
9
|
+
import type { ToolAnnotations, ServerRequest, ServerNotification, GetPromptResult, CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
10
|
+
import type { RequestHandlerExtra } from '@modelcontextprotocol/sdk/shared/protocol.js';
|
|
11
|
+
import type { ReadResourceResult, Implementation } from '@modelcontextprotocol/sdk/types.js';
|
|
12
|
+
import type { Variables } from '@modelcontextprotocol/sdk/shared/uriTemplate.js';
|
|
13
|
+
import { ResourceTemplate } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
14
|
+
export { ResourceTemplate };
|
|
15
|
+
export type McpConfig = {
|
|
16
|
+
path?: string;
|
|
17
|
+
serverOptions?: Implementation;
|
|
18
|
+
};
|
|
19
|
+
export interface Tool {
|
|
20
|
+
name: string;
|
|
21
|
+
config: {
|
|
22
|
+
title?: string;
|
|
23
|
+
description?: string;
|
|
24
|
+
inputSchema?: ZodRawShape;
|
|
25
|
+
outputSchema?: ZodRawShape;
|
|
26
|
+
annotations?: ToolAnnotations;
|
|
27
|
+
_meta?: Record<string, unknown>;
|
|
28
|
+
};
|
|
29
|
+
handle(argsOrExtra: z.objectOutputType<ZodRawShape, ZodTypeAny> | RequestHandlerExtra<ServerRequest, ServerNotification>, extra?: RequestHandlerExtra<ServerRequest, ServerNotification>): CallToolResult | Promise<CallToolResult>;
|
|
30
|
+
}
|
|
31
|
+
export interface Resource {
|
|
32
|
+
name: string;
|
|
33
|
+
uriOrTemplate: string | ResourceTemplate;
|
|
34
|
+
config: ResourceMetadata;
|
|
35
|
+
handle(uri: URL, variablesOrExtra: Variables | RequestHandlerExtra<ServerRequest, ServerNotification>, extra?: RequestHandlerExtra<ServerRequest, ServerNotification>): ReadResourceResult | Promise<ReadResourceResult>;
|
|
36
|
+
}
|
|
37
|
+
type PromptArgsRawShape = {
|
|
38
|
+
[k: string]: ZodType<string, ZodTypeDef, string> | ZodOptional<ZodType<string, ZodTypeDef, string>>;
|
|
39
|
+
};
|
|
40
|
+
export interface Prompt {
|
|
41
|
+
name: string;
|
|
42
|
+
config: {
|
|
43
|
+
title?: string;
|
|
44
|
+
description?: string;
|
|
45
|
+
argsSchema?: PromptArgsRawShape;
|
|
46
|
+
};
|
|
47
|
+
handle(argsOrExtra: z.objectOutputType<PromptArgsRawShape, ZodTypeAny> | RequestHandlerExtra<ServerRequest, ServerNotification>, extra?: RequestHandlerExtra<ServerRequest, ServerNotification>): GetPromptResult | Promise<GetPromptResult>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvF,OAAO,KAAI,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAC9E,OAAO,KAAI,EAAE,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAC5I,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAA;AACvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAA;AAC5F,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iDAAiD,CAAA;AAEhF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAE1E,OAAO,EAAE,gBAAgB,EAAE,CAAA;AAE3B,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,cAAc,CAAA;CAC/B,CAAA;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,WAAW,CAAC;QAC1B,YAAY,CAAC,EAAE,WAAW,CAAC;QAC3B,WAAW,CAAC,EAAE,eAAe,CAAC;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAA;IACD,MAAM,CACJ,WAAW,EAAE,CAAC,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,EACjH,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC7D,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAC5C;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,MAAM,GAAG,gBAAgB,CAAA;IACxC,MAAM,EAAE,gBAAgB,CAAA;IACxB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,gBAAgB,EAAE,SAAS,GAAG,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAAG,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;CACzN;AAED,KAAK,kBAAkB,GAAG;IACxB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;CACrG,CAAC;AAGF,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE;QACN,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,kBAAkB,CAAA;KAChC,CAAA;IACD,MAAM,CACJ,WAAW,EAAE,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAAG,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,EACxH,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC7D,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CAC9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../stubs/main.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,QAA8B,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{{#var resourceFileName = string(className).snakeCase().ext('.ts').toString()}}
|
|
2
|
+
{{{
|
|
3
|
+
exports({
|
|
4
|
+
to: app.makePath(app.rcFile.directories['mcp'] || 'app/mcp/', 'prompts', resourceFileName)
|
|
5
|
+
})
|
|
6
|
+
}}}
|
|
7
|
+
import type { Prompt } from '@jrmc/adonis-mcp/types'
|
|
8
|
+
|
|
9
|
+
export default class {{ className }} implements Prompt {
|
|
10
|
+
name = 'prompt_name'
|
|
11
|
+
config = {
|
|
12
|
+
title: 'Prompt Title',
|
|
13
|
+
description: 'Prompt Description',
|
|
14
|
+
argsSchema: {}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
async handle() {
|
|
18
|
+
return {
|
|
19
|
+
messages: [
|
|
20
|
+
{
|
|
21
|
+
role: 'user' as const,
|
|
22
|
+
content: { type: 'text' as const, text: `Please review this code:\n\n${code}` }
|
|
23
|
+
}
|
|
24
|
+
]
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{{#var resourceFileName = string(className).snakeCase().ext('.ts').toString()}}
|
|
2
|
+
{{{
|
|
3
|
+
exports({
|
|
4
|
+
to: app.makePath(app.rcFile.directories['mcp'] || 'app/mcp/', 'resources', resourceFileName)
|
|
5
|
+
})
|
|
6
|
+
}}}
|
|
7
|
+
import { type Resource, ResourceTemplate, Response } from '@jrmc/adonis-mcp/types'
|
|
8
|
+
|
|
9
|
+
export default class {{ className }} implements Resource {
|
|
10
|
+
name = 'resource_name'
|
|
11
|
+
config = {
|
|
12
|
+
title: 'Resoource title',
|
|
13
|
+
description: 'Resource description'
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
uriOrTemplate = new ResourceTemplate('users://{userId}/profile', { list: undefined })
|
|
17
|
+
|
|
18
|
+
async handle(uri: URL, { userId }: { userId: string }) {
|
|
19
|
+
return Response.uri(uri, `Profile data for user ${userId}`)
|
|
20
|
+
// return {
|
|
21
|
+
// contents: [
|
|
22
|
+
// {
|
|
23
|
+
// uri: uri.href,
|
|
24
|
+
// text: `Profile data for user ${userId}`
|
|
25
|
+
// }
|
|
26
|
+
// ]
|
|
27
|
+
// }
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{{#var resourceFileName = string(className).snakeCase().ext('.ts').toString()}}
|
|
2
|
+
{{{
|
|
3
|
+
exports({
|
|
4
|
+
to: app.makePath(app.rcFile.directories['mcp'] || 'app/mcp/', 'tools', resourceFileName)
|
|
5
|
+
})
|
|
6
|
+
}}}
|
|
7
|
+
import type { Tool } from '@jrmc/adonis-mcp/types'
|
|
8
|
+
|
|
9
|
+
export default class {{ className }} implements Tool {
|
|
10
|
+
name = 'Tool name'
|
|
11
|
+
config = {
|
|
12
|
+
title: 'Tool title',
|
|
13
|
+
description: 'Tool description',
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
async handle() {
|
|
17
|
+
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.es2024.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.es2023.intl.d.ts","../node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../node_modules/typescript/lib/lib.es2024.collection.d.ts","../node_modules/typescript/lib/lib.es2024.object.d.ts","../node_modules/typescript/lib/lib.es2024.promise.d.ts","../node_modules/typescript/lib/lib.es2024.regexp.d.ts","../node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2024.string.d.ts","../node_modules/typescript/lib/lib.esnext.array.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.promise.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.esnext.iterator.d.ts","../node_modules/typescript/lib/lib.esnext.float16.d.ts","../node_modules/typescript/lib/lib.esnext.error.d.ts","../node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../node_modules/@poppinss/colors/build/src/base.d.ts","../node_modules/@poppinss/colors/build/src/types.d.ts","../node_modules/@poppinss/colors/build/index.d.ts","../node_modules/@poppinss/cliui/build/src/icons.d.ts","../node_modules/cli-table3/index.d.ts","../node_modules/@poppinss/cliui/build/src/types.d.ts","../node_modules/@poppinss/cliui/build/src/table.d.ts","../node_modules/@poppinss/cliui/build/src/logger/action.d.ts","../node_modules/@poppinss/cliui/build/src/logger/spinner.d.ts","../node_modules/@poppinss/cliui/build/src/logger/main.d.ts","../node_modules/@poppinss/cliui/build/src/instructions.d.ts","../node_modules/@poppinss/cliui/build/src/tasks/task.d.ts","../node_modules/@poppinss/cliui/build/src/tasks/manager.d.ts","../node_modules/@poppinss/cliui/build/src/renderers/memory.d.ts","../node_modules/@poppinss/cliui/build/src/renderers/console.d.ts","../node_modules/@poppinss/cliui/build/index.d.ts","../node_modules/@poppinss/hooks/build/src/runner.d.ts","../node_modules/@poppinss/hooks/build/src/types.d.ts","../node_modules/@poppinss/prompts/build/src/types.d.ts","../node_modules/@poppinss/prompts/build/src/mocked_prompt.d.ts","../node_modules/@poppinss/prompts/build/src/base.d.ts","../node_modules/@poppinss/prompts/build/src/enquirer.d.ts","../node_modules/@poppinss/exception/build/src/exception.d.ts","../node_modules/@poppinss/exception/build/index.d.ts","../node_modules/@poppinss/prompts/build/src/errors.d.ts","../node_modules/@poppinss/prompts/build/index.d.ts","../node_modules/@poppinss/macroable/build/index.d.ts","../node_modules/@adonisjs/ace/build/src/commands/base.d.ts","../node_modules/@adonisjs/ace/build/src/kernel.d.ts","../node_modules/@adonisjs/ace/build/src/types.d.ts","../node_modules/@adonisjs/core/build/types/ace.d.ts","../node_modules/@adonisjs/ace/build/src/parser.d.ts","../node_modules/@poppinss/utils/build/src/secret.d.ts","../node_modules/@poppinss/utils/build/src/base64.d.ts","../node_modules/@poppinss/utils/build/src/types.d.ts","../node_modules/@poppinss/utils/build/src/compose.d.ts","../node_modules/@poppinss/utils/build/src/import_default.d.ts","../node_modules/@poppinss/utils/build/src/define_static_property.d.ts","../node_modules/@poppinss/utils/build/src/exception.d.ts","../node_modules/@poppinss/utils/build/src/flatten.d.ts","../node_modules/@poppinss/utils/build/src/fs_import_all.d.ts","../node_modules/@poppinss/utils/build/src/fs_read_all.d.ts","../node_modules/@poppinss/utils/build/src/is_script_file.d.ts","../node_modules/@poppinss/utils/build/src/message_builder.d.ts","../node_modules/@poppinss/utils/build/src/natural_sort.d.ts","../node_modules/@poppinss/object-builder/build/index.d.ts","../node_modules/@poppinss/utils/build/src/object_builder.d.ts","../node_modules/@poppinss/utils/build/src/safe_equal.d.ts","../node_modules/@poppinss/utils/build/src/slash.d.ts","../node_modules/@poppinss/utils/build/src/exceptions/main.d.ts","../node_modules/@poppinss/utils/build/index.d.ts","../node_modules/@adonisjs/ace/build/src/errors.d.ts","../node_modules/@adonisjs/ace/build/src/decorators/args.d.ts","../node_modules/@adonisjs/ace/build/src/decorators/flags.d.ts","../node_modules/@poppinss/cliui/build/src/helpers.d.ts","../node_modules/@adonisjs/ace/build/src/commands/help.d.ts","../node_modules/@adonisjs/ace/build/src/commands/list.d.ts","../node_modules/@adonisjs/ace/build/src/loaders/fs_loader.d.ts","../node_modules/@adonisjs/ace/build/src/loaders/list_loader.d.ts","../node_modules/@adonisjs/ace/build/src/exception_handler.d.ts","../node_modules/@adonisjs/ace/build/src/generators/index_generator.d.ts","../node_modules/@adonisjs/ace/build/index.d.ts","../node_modules/@adonisjs/repl/build/src/types.d.ts","../node_modules/@adonisjs/repl/build/src/repl.d.ts","../node_modules/@adonisjs/repl/build/index.d.ts","../node_modules/@adonisjs/core/build/modules/repl.d.ts","../node_modules/@poppinss/types/build/src/base.d.ts","../node_modules/@poppinss/types/build/src/route.d.ts","../node_modules/@poppinss/types/build/index.d.ts","../node_modules/@adonisjs/fold/node_modules/@poppinss/utils/build/modules/types.d.ts","../node_modules/@adonisjs/fold/node_modules/@poppinss/utils/build/modules/exception.d.ts","../node_modules/@adonisjs/fold/build/src/resolver.d.ts","../node_modules/@adonisjs/fold/build/src/types.d.ts","../node_modules/@adonisjs/fold/build/src/contextual_bindings_builder.d.ts","../node_modules/@adonisjs/fold/build/src/container.d.ts","../node_modules/@adonisjs/fold/build/src/decorators/inject.d.ts","../node_modules/@adonisjs/fold/build/src/module_caller.d.ts","../node_modules/@adonisjs/fold/build/src/module_importer.d.ts","../node_modules/@adonisjs/fold/build/src/module_expression.d.ts","../node_modules/@adonisjs/fold/build/src/parse_binding_reference.d.ts","../node_modules/@adonisjs/fold/build/index.d.ts","../node_modules/@adonisjs/application/build/src/feature_flags.d.ts","../node_modules/@adonisjs/config/build/src/config.d.ts","../node_modules/@adonisjs/config/build/src/loader.d.ts","../node_modules/@adonisjs/config/build/index.d.ts","../node_modules/@adonisjs/application/build/src/stubs/stub.d.ts","../node_modules/@adonisjs/application/build/src/stubs/manager.d.ts","../node_modules/@adonisjs/application/build/src/application.d.ts","../node_modules/@adonisjs/application/build/src/types.d.ts","../node_modules/@adonisjs/core/build/types/app.d.ts","../node_modules/@adonisjs/application/build/src/errors.d.ts","../node_modules/@adonisjs/application/build/src/rc_file/parser.d.ts","../node_modules/@adonisjs/application/build/src/define_config.d.ts","../node_modules/@adonisjs/application/build/src/generators.d.ts","../node_modules/@adonisjs/application/build/index.d.ts","../node_modules/emittery/index.d.ts","../node_modules/@adonisjs/events/build/src/types.d.ts","../node_modules/@adonisjs/events/build/src/events_buffer.d.ts","../node_modules/@adonisjs/events/build/src/emitter.d.ts","../node_modules/@adonisjs/events/build/src/base_event.d.ts","../node_modules/@adonisjs/events/build/index.d.ts","../node_modules/@adonisjs/core/build/modules/events.d.ts","../node_modules/@adonisjs/core/build/modules/app.d.ts","../node_modules/@adonisjs/core/build/src/test_utils/http.d.ts","../node_modules/@adonisjs/encryption/build/src/errors.d.ts","../node_modules/@adonisjs/encryption/build/src/types.d.ts","../node_modules/@adonisjs/encryption/build/src/message_verifier.d.ts","../node_modules/@adonisjs/encryption/build/src/encryption.d.ts","../node_modules/@adonisjs/encryption/build/index.d.ts","../node_modules/@adonisjs/http-server/build/src/types/qs.d.ts","../node_modules/@types/qs/index.d.ts","../node_modules/@adonisjs/http-server/build/src/qs.d.ts","../node_modules/@adonisjs/http-server/build/src/types/request.d.ts","../node_modules/@types/node/compatibility/iterators.d.ts","../node_modules/@types/node/globals.typedarray.d.ts","../node_modules/@types/node/buffer.buffer.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/web-globals/abortcontroller.d.ts","../node_modules/@types/node/web-globals/crypto.d.ts","../node_modules/@types/node/web-globals/domexception.d.ts","../node_modules/@types/node/web-globals/events.d.ts","../node_modules/undici-types/utility.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client-stats.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/h2c-client.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-call-history.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/snapshot-agent.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/env-http-proxy-agent.d.ts","../node_modules/undici-types/retry-handler.d.ts","../node_modules/undici-types/retry-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cache-interceptor.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/util.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/eventsource.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/web-globals/fetch.d.ts","../node_modules/@types/node/web-globals/navigator.d.ts","../node_modules/@types/node/web-globals/storage.d.ts","../node_modules/@types/node/web-globals/streams.d.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/inspector.generated.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/sea.d.ts","../node_modules/@types/node/sqlite.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/index.d.ts","../node_modules/pino-std-serializers/index.d.ts","../node_modules/sonic-boom/types/index.d.ts","../node_modules/pino/pino.d.ts","../node_modules/@adonisjs/logger/build/src/types.d.ts","../node_modules/@adonisjs/logger/build/src/logger.d.ts","../node_modules/@adonisjs/logger/build/src/targets/create.d.ts","../node_modules/@adonisjs/logger/build/src/targets/file.d.ts","../node_modules/@adonisjs/logger/build/src/targets/pretty.d.ts","../node_modules/@adonisjs/logger/build/src/targets/main.d.ts","../node_modules/@adonisjs/logger/build/src/define_config.d.ts","../node_modules/@adonisjs/logger/build/src/logger_manager.d.ts","../node_modules/@adonisjs/logger/build/src/pino.d.ts","../node_modules/@adonisjs/logger/build/index.d.ts","../node_modules/@poppinss/middleware/build/src/types.d.ts","../node_modules/@adonisjs/http-server/build/src/types/base.d.ts","../node_modules/@adonisjs/http-server/build/src/types/middleware.d.ts","../node_modules/@poppinss/middleware/build/src/runner.d.ts","../node_modules/@poppinss/middleware/build/src/middleware.d.ts","../node_modules/@poppinss/middleware/build/index.d.ts","../node_modules/@adonisjs/http-server/build/src/types/response.d.ts","../node_modules/@adonisjs/http-server/build/src/types/server.d.ts","../node_modules/@adonisjs/http-server/build/src/types/route.d.ts","../node_modules/@adonisjs/http-server/build/src/router/route.d.ts","../node_modules/@adonisjs/http-server/build/src/router/brisk.d.ts","../node_modules/@adonisjs/http-server/build/src/router/resource.d.ts","../node_modules/@adonisjs/http-server/build/src/router/group.d.ts","../node_modules/@adonisjs/http-server/build/src/router/lookup_store/route_finder.d.ts","../node_modules/@adonisjs/http-server/build/src/router/lookup_store/url_builder.d.ts","../node_modules/@adonisjs/http-server/build/src/router/lookup_store/main.d.ts","../node_modules/@adonisjs/http-server/build/src/router/matchers.d.ts","../node_modules/@adonisjs/http-server/build/src/router/main.d.ts","../node_modules/@adonisjs/http-server/build/src/redirect.d.ts","../node_modules/@adonisjs/http-server/build/src/response.d.ts","../node_modules/@adonisjs/http-server/build/src/http_context/main.d.ts","../node_modules/@adonisjs/http-server/build/src/request.d.ts","../node_modules/@adonisjs/http-server/build/src/response_status.d.ts","../node_modules/@adonisjs/http-server/build/src/server/main.d.ts","../node_modules/@adonisjs/http-server/build/src/exceptions.d.ts","../node_modules/@adonisjs/http-server/build/src/define_config.d.ts","../node_modules/@adonisjs/http-server/build/src/cookies/client.d.ts","../node_modules/@adonisjs/http-server/build/src/exception_handler.d.ts","../node_modules/@adonisjs/http-server/build/index.d.ts","../node_modules/@adonisjs/bodyparser/build/src/multipart/file.d.ts","../node_modules/@adonisjs/bodyparser/build/src/types.d.ts","../node_modules/@adonisjs/bodyparser/build/src/multipart/main.d.ts","../node_modules/@adonisjs/bodyparser/build/src/define_config.d.ts","../node_modules/@adonisjs/bodyparser/build/index.d.ts","../node_modules/@adonisjs/http-server/build/src/types/main.d.ts","../node_modules/@adonisjs/core/build/types/http.d.ts","../node_modules/@adonisjs/core/build/modules/http/request_validator.d.ts","../node_modules/@adonisjs/core/build/modules/http/main.d.ts","../node_modules/@adonisjs/core/build/src/test_utils/main.d.ts","../node_modules/@sindresorhus/is/distribution/types.d.ts","../node_modules/@sindresorhus/is/distribution/index.d.ts","../node_modules/@poppinss/dumper/build/src/parser.d.ts","../node_modules/@poppinss/dumper/build/src/types.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/head.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/themes.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/formatter.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/printers/main.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/main.d.ts","../node_modules/@poppinss/dumper/build/formatters/html/types.d.ts","../node_modules/@poppinss/dumper/build/formatters/console/formatter.d.ts","../node_modules/@poppinss/dumper/build/formatters/console/types.d.ts","../node_modules/@adonisjs/core/build/modules/dumper/dumper.d.ts","../node_modules/@adonisjs/core/build/modules/logger.d.ts","../node_modules/@adonisjs/hash/build/src/types.d.ts","../node_modules/@adonisjs/hash/build/src/hash.d.ts","../node_modules/@adonisjs/hash/build/src/hash_manager.d.ts","../node_modules/@adonisjs/hash/build/index.d.ts","../node_modules/@adonisjs/hash/build/src/drivers/argon.d.ts","../node_modules/@adonisjs/core/build/modules/hash/drivers/argon.d.ts","../node_modules/@adonisjs/hash/build/src/drivers/scrypt.d.ts","../node_modules/@adonisjs/core/build/modules/hash/drivers/scrypt.d.ts","../node_modules/@adonisjs/hash/build/src/drivers/bcrypt.d.ts","../node_modules/@adonisjs/core/build/modules/hash/drivers/bcrypt.d.ts","../node_modules/@adonisjs/core/build/types/hash.d.ts","../node_modules/@adonisjs/core/build/modules/hash/define_config.d.ts","../node_modules/@adonisjs/core/build/modules/hash/main.d.ts","../node_modules/@adonisjs/core/build/modules/encryption.d.ts","../node_modules/@adonisjs/core/build/types/container.d.ts","../node_modules/@adonisjs/core/build/types/logger.d.ts","../node_modules/@adonisjs/core/build/src/types.d.ts","../node_modules/package-manager-detector/dist/shared/package-manager-detector.ncFwAKgD.d.mts","../node_modules/package-manager-detector/dist/commands.d.mts","../node_modules/package-manager-detector/dist/constants.d.mts","../node_modules/quansync/dist/types.d.mts","../node_modules/package-manager-detector/dist/detect.d.mts","../node_modules/package-manager-detector/dist/index.d.mts","../node_modules/tinyexec/dist/main.d.ts","../node_modules/@antfu/install-pkg/dist/index.d.ts","../node_modules/@ts-morph/common/lib/typescript.d.ts","../node_modules/@ts-morph/common/lib/ts-morph-common.d.ts","../node_modules/ts-morph/lib/ts-morph.d.ts","../node_modules/@adonisjs/assembler/build/src/code_transformer/rc_file_transformer.d.ts","../node_modules/@adonisjs/assembler/build/src/types.d.ts","../node_modules/@adonisjs/assembler/build/src/code_transformer/main.d.ts","../node_modules/@adonisjs/core/build/modules/ace/codemods.d.ts","../node_modules/@adonisjs/core/build/modules/ace/commands.d.ts","../node_modules/@adonisjs/core/build/modules/ace/kernel.d.ts","../node_modules/@adonisjs/core/build/modules/ace/main.d.ts","../node_modules/@adonisjs/core/build/commands/configure.d.ts","../stubs/main.ts","../configure.ts","../index.ts","../node_modules/@types/he/index.d.ts","../node_modules/@poppinss/string/build/src/uuid.d.ts","../node_modules/@poppinss/string/build/src/random.d.ts","../node_modules/@poppinss/string/build/src/excerpt.d.ts","../node_modules/@poppinss/string/build/src/justify.d.ts","../node_modules/@poppinss/string/build/src/ordinal.d.ts","../node_modules/@poppinss/string/build/src/truncate.d.ts","../node_modules/@poppinss/string/build/src/sentence.d.ts","../node_modules/@poppinss/string/build/src/word_wrap.d.ts","../node_modules/@poppinss/string/build/src/html_escape.d.ts","../node_modules/@poppinss/string/build/src/interpolate.d.ts","../node_modules/@poppinss/string/build/src/to_unix_slash.d.ts","../node_modules/@types/pluralize/index.d.ts","../node_modules/@poppinss/string/build/src/pluralize.d.ts","../node_modules/@poppinss/string/build/src/change_case.d.ts","../node_modules/slugify/slugify.d.ts","../node_modules/@poppinss/string/build/src/types.d.ts","../node_modules/@types/bytes/index.d.ts","../node_modules/@poppinss/string/build/index.d.ts","../node_modules/@poppinss/utils/build/src/string/main.d.ts","../node_modules/@poppinss/string/build/string_builder.d.ts","../node_modules/@poppinss/utils/build/src/string/string_builder.d.ts","../node_modules/@adonisjs/core/build/src/helpers/string.d.ts","../commands/make/prompt.ts","../commands/make/resource.ts","../commands/make/tool.ts","../node_modules/zod/v3/helpers/typeAliases.d.cts","../node_modules/zod/v3/helpers/util.d.cts","../node_modules/zod/v3/index.d.cts","../node_modules/zod/v3/ZodError.d.cts","../node_modules/zod/v3/locales/en.d.cts","../node_modules/zod/v3/errors.d.cts","../node_modules/zod/v3/helpers/parseUtil.d.cts","../node_modules/zod/v3/helpers/enumUtil.d.cts","../node_modules/zod/v3/helpers/errorUtil.d.cts","../node_modules/zod/v3/helpers/partialUtil.d.cts","../node_modules/zod/v3/standard-schema.d.cts","../node_modules/zod/v3/types.d.cts","../node_modules/zod/v3/external.d.cts","../node_modules/zod/index.d.cts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/types.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/types.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/transport.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/shared/uriTemplate.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.d.ts","../src/types.ts","../node_modules/parse-imports/dist/index.d.ts","../node_modules/@paralleldrive/cuid2/index.d.ts","../node_modules/@adonisjs/core/build/src/helpers/verification_token.d.ts","../node_modules/@adonisjs/core/build/src/helpers/parse_binding_reference.d.ts","../node_modules/@adonisjs/core/build/src/helpers/main.d.ts","../node_modules/@modelcontextprotocol/sdk/dist/esm/server/streamableHttp.d.ts","../src/mcp.ts","../src/controllers/mcp_controller.ts","../providers/mcp_provider.ts","../src/define_config.ts"],"fileIdsList":[[196,250,267,268,401,403,428],[196,250,267,268,402,403],[196,250,267,268,404],[108,109,112,132,133,134,135,136,137,138,139,140,141,196,250,267,268],[86,96,106,107,109,110,196,250,267,268],[108,110,196,250,267,268],[110,196,250,267,268],[104,131,196,250,267,268],[142,196,250,267,268],[196,250,267,268],[106,108,110,196,250,267,268],[96,98,109,196,250,267,268],[162,168,171,172,173,174,196,250,267,268],[98,107,161,162,165,167,169,196,250,267,268,347],[169,196,250,267,268,347],[131,196,250,267,268],[166,168,196,250,267,268],[168,196,250,267,268],[86,96,168,196,250,267,268],[196,250,267,268,391,394,395,396],[169,196,250,267,268,347,394],[169,196,250,267,268,342,343,344,345,346],[196,250,267,268,344],[107,196,250,267,268,344],[196,250,267,268,342,344,347],[196,250,267,268,282,343],[163,164,196,250,267,268],[111,196,250,267,268,398,401],[110,183,196,250,261,267,268,396,397],[111,142,196,250,267,268,383,398,400,462],[142,196,250,267,268,383,399,462],[142,196,250,267,268,399,400],[175,196,250,267,268],[183,196,250,267,268,362,364],[189,196,250,267,268],[181,196,250,267,268],[196,250,267,268,372,374,376,377,383,462],[196,250,267,268,371],[196,250,267,268,375],[196,250,267,268,373],[196,250,267,268,370,378],[196,250,267,268,342,347,350],[170,183,196,250,267,268,349,351,462],[196,250,267,268,313],[145,196,250,267,268],[131,196,250,267,268,454,455,456,457],[196,250,267,268,349],[196,250,267,268,406,425,427],[196,250,264,266,267,268,352],[107,184,196,250,264,267,268,351,383,462],[146,170,182,183,196,250,267,268,349,351,352,365,366,377,379,380,381,382,401,462],[153,196,250,267,268],[196,250,267,268,367],[196,250,267,268,348],[196,250,267,268,304],[185,188,196,250,267,268],[131,186,187,196,250,267,268],[179,180,196,250,267,268],[179,196,250,267,268],[175,176,177,178,196,250,267,268],[177,196,250,267,268],[152,155,156,157,158,159,160,196,250,267,268],[150,152,153,154,196,250,267,268],[150,153,155,196,250,267,268],[150,152,153,155,196,250,267,268],[152,153,155,196,250,267,268],[150,196,250,267,268],[150,153,196,250,267,268],[150,151,152,155,196,250,267,268],[104,196,250,267,268],[149,196,250,267,268],[196,250,267,268,368,369],[196,250,267,268,367,368],[196,250,267,268,323,324,325,326,331,332,333,334,335,336,337,338,339,340,341],[196,250,267,268,321],[107,196,250,267,268,304,321,334],[131,196,250,267,268,334],[107,161,196,250,267,268,313,322,333,335],[190,191,196,250,267,268],[192,196,250,264,267,268,322,331,333],[107,189,192,193,196,250,264,267,268,293,334],[107,189,192,196,250,264,267,268,282,320,331,332,334],[107,175,196,250,267,268,316,322,323],[107,196,250,267,268,315,316,322,323,324,325],[107,189,192,196,250,267,268,322,328],[196,250,267,268,322],[189,192,196,250,267,268,327],[175,189,192,196,250,267,268,315,316,322,323,324,325,326,329,330],[107,196,250,267,268],[107,175,196,250,267,268,315,316,322,323],[107,175,196,250,267,268,315,316,322],[161,175,177,189,196,250,264,266,267,268,313,315,316,321,331,333,334,335],[196,250,267,268,314],[190,193,196,250,267,268,315,316,320,321,322],[161,196,250,267,268,315,334],[196,250,267,268,282],[161,196,250,267,268,315,316,319,321,334],[190,193,196,250,267,268,314,315,320,334],[196,250,267,268,305,309,310,311,312],[196,250,267,268,303,304],[196,250,267,268,303,304,305],[196,250,267,268,306,307,308],[196,250,267,268,303],[144,196,250,267,268],[82,143,196,250,267,268,279],[196,250,267,268,389,390],[196,250,267,268,445,447,449],[196,250,267,268,445,447,448,449,450,451],[196,250,264,267,268,446,447,448],[196,250,267,268,445,446,447,448],[196,250,267,268,447],[196,250,267,268,445,446],[82,83,84,86,87,90,91,93,94,95,196,250,267,268],[82,86,196,250,267,268],[82,86,88,89,196,250,267,268],[86,196,250,267,268],[82,86,92,196,250,267,268],[82,85,196,250,267,268],[81,196,250,267,268],[196,250,267,268,356,364],[196,250,267,268,356,363],[196,250,267,268,356,362],[196,250,267,268,357,358,359,360,362],[196,250,267,268,362],[196,250,267,268,356,361],[196,250,267,268,356],[196,250,267,268,354,355],[103,196,250,267,268],[98,196,250,267,268],[97,196,250,267,268],[196,250,267,268,318],[196,250,267,268,317],[102,105,196,250,267,268],[99,100,196,247,250,267,268],[101,196,250,267,268],[196,250,267,268,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423],[196,250,267,268,418],[196,250,255,267,268],[147,148,196,250,267,268],[147,196,250,267,268],[113,114,116,117,118,119,120,121,122,123,124,125,127,128,129,130,196,250,267,268],[115,196,250,267,268],[126,196,250,267,268],[196,250,267,268,424],[196,250,267,268,426],[196,250,267,268,353],[196,250,267,268,392],[196,247,248,250,267,268],[196,249,250,267,268],[250,267,268],[196,250,255,267,268,285],[196,250,251,256,261,267,268,270,282,293],[196,250,251,252,261,267,268,270],[196,250,253,267,268,294],[196,250,254,255,262,267,268,271],[196,250,255,267,268,282,290],[196,250,256,258,261,267,268,270],[196,249,250,257,267,268],[196,250,258,259,267,268],[196,250,260,261,267,268],[196,249,250,261,267,268],[196,250,261,262,263,267,268,282,293],[196,250,261,262,263,267,268,277,282,285],[196,242,250,258,261,264,267,268,270,282,293],[196,250,261,262,264,265,267,268,270,282,290,293],[196,250,264,266,267,268,282,290,293],[194,195,196,197,198,199,200,201,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299],[196,250,261,267,268],[196,250,267,268,269,293],[196,250,258,261,267,268,270,282],[196,250,267,268,271],[196,250,267,268,272],[196,249,250,267,268,273],[196,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299],[196,250,267,268,275],[196,250,267,268,276],[196,250,261,267,268,277,278],[196,250,267,268,277,279,294,296],[196,250,262,267,268],[196,250,261,267,268,282,283,285],[196,250,267,268,284,285],[196,250,267,268,282,283],[196,250,267,268,285],[196,250,267,268,286],[196,247,250,267,268,282,287],[196,250,261,267,268,288,289],[196,250,267,268,288,289],[196,250,255,267,268,270,282,290],[196,250,267,268,291],[196,250,267,268,270,292],[196,250,264,267,268,276,293],[196,250,255,267,268,294],[196,250,267,268,282,295],[196,250,267,268,269,296],[196,250,267,268,297],[196,242,250,267,268],[196,250,267,268,298],[196,242,250,261,263,267,268,273,282,285,293,295,296,298],[196,250,267,268,282,299],[196,250,267,268,384],[196,250,267,268,384,387],[196,250,267,268,384,385,386,387,388],[196,250,264,267,268,300],[196,250,261,267,268,298,301,302],[196,250,261,267,268,300],[196,250,251,267,268,282],[196,250,267,268,393],[196,208,211,214,215,250,267,268,293],[196,211,250,267,268,282,293],[196,211,215,250,267,268,293],[196,205,250,267,268],[196,209,250,267,268],[196,207,208,211,250,267,268,293],[196,250,267,268,270,290],[196,250,267,268,300],[196,205,250,267,268,300],[196,207,211,250,267,268,270,293],[196,202,203,204,206,210,250,261,267,268,282,293],[196,211,219,227,250,267,268],[196,203,209,250,267,268],[196,211,236,237,250,267,268],[196,203,206,211,250,267,268,285,293,300],[196,211,250,267,268],[196,207,211,250,267,268,293],[196,202,250,267,268],[196,205,206,207,209,210,211,212,213,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,237,238,239,240,241,250,267,268],[196,211,229,232,250,258,267,268],[196,211,219,220,221,250,267,268],[196,209,211,220,222,250,267,268],[196,210,250,267,268],[196,203,205,211,250,267,268],[196,211,215,220,222,250,267,268],[196,215,250,267,268],[196,209,211,214,250,267,268,293],[196,203,207,211,219,250,267,268],[196,211,229,250,267,268],[196,222,250,267,268],[196,205,211,236,250,267,268,285,298,300],[196,250,267,268,444],[196,250,267,268,432,433,434],[196,250,267,268,435,436],[196,250,267,268,432,433,435,437,438,443],[196,250,267,268,433,435],[196,250,267,268,443],[196,250,267,268,435],[196,250,267,268,432,433,435,438,439,440,441,442],[196,250,267,268,351,383,453,458,460,461,462],[196,250,255,267,268,351,447,459,462],[196,250,267,268,453],[196,250,267,268,452,453,459],[196,250,267,268,445,447,449,451,452]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"196cb558a13d4533a5163286f30b0509ce0210e4b316c56c38d4c0fd2fb38405","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"cd664307293dad29205836db53232d8048ad6be8b9e0e811e144481eece72be7","impliedFormat":99},{"version":"595812bfbe4c360de0a4e4282ec4acd621ff03b766c8cbb27c0debe07ea9826b","impliedFormat":99},{"version":"a680cb3d39461b56423ad34d5c8486565a0811ce3c98a754a82f0473b7396cc6","impliedFormat":99},{"version":"a1904a801280c43faeb6e93288d168842b22b37f236b314eb8a0691ad5834def","impliedFormat":99},{"version":"a1fc8b27b9375f1edc7ace1193f7a838ac1bc7cba03cc595a2d6d5196b7005d8","impliedFormat":1},{"version":"7aabb31ab3b240fe9fb6a0cc0910effd93f61c184bfc3ac4d25b742f9a508a9d","impliedFormat":99},{"version":"89b48b04d6aad381f550be97c46f6e20a465abf0e7b4c29003d3fb26f768f080","impliedFormat":99},{"version":"593a2b2df2546d9ac9aa829d3980333f0fd8d38cf1d7cb3e74cf8a9fcf21575c","impliedFormat":99},{"version":"f2f4cf644e76a4d9b02a2e947e1836f8fd118a453fc46b9bb135141436aa3833","impliedFormat":99},{"version":"e2d2a105808a87f1482d07eff6c344bc86cb770c241114a1ace232142729c12a","impliedFormat":99},{"version":"f8f738bcc05c539aa5d2cdc5ac975de0d7fbcdb2c11314d7b8e99f9089167c65","impliedFormat":99},{"version":"3af10c8a0f5b3fdf3a32d26f9930d11289e8ce45951a026f6320202bdc714bcd","impliedFormat":99},{"version":"94923ceda2cd7df55ee0ac78e282796cf593cc4a4eb30c3a098726312a82500b","impliedFormat":99},{"version":"2a6b795496b5cfac878af29a5f44d0b16cd76a99110f37ec5ce6fffd24209fa9","impliedFormat":99},{"version":"c0f0c902c3b6083b62e3ee487df3b45b42ca879ad406b8ea6375df483f866ed4","impliedFormat":99},{"version":"929dcf187eb4625cd59f980903405241185d79a05cb54b5cec3e0c06d9f2af44","impliedFormat":99},{"version":"0c7ce2c3b91568c0959e772c719939c634c614b787ff60b5f9307cc91b8a8d29","impliedFormat":99},{"version":"0b26bed242aec9340007729cf3fa41a739980701b5ad6cd0ccd87d717c662422","impliedFormat":99},{"version":"5cc01034029e135c71efef189a9cb988042a9e3673bdbe739effd63b7832a8d9","impliedFormat":99},{"version":"1eace1ca18b3f5b026964a869f435f960ed23a9c34d146467e154d52abb18da0","impliedFormat":99},{"version":"793d98cd80530ea77bb22afc087a0b1c0ca69a2edceca665b9e5ac132c5fa4cf","impliedFormat":99},{"version":"cfca4d6bb65f862877fed357cbb3dfbb754c8ac1d9736e4175ea228fe2f050c5","impliedFormat":99},{"version":"168ac6c5789876af18e69225d75e9b966805fa85a1035347a86cb66ed8eae414","impliedFormat":99},{"version":"c93e3539ebb570e909f029cdbcc0650833c2646bd3ed2dfff527f04bd50750b2","impliedFormat":99},{"version":"e3bf7213ec50b699843ad5b8164fef713c04b1e8712fcde7fbbf0c4f4bbe0be6","impliedFormat":99},{"version":"8838bb743fdbaadaa449254b32e41b7e1549da153a38b0357660adfe67ae4a37","impliedFormat":99},{"version":"213311cd1bd8555e0fad9b1d60248a5e7106253f1231a02af6ae7df583b752a3","impliedFormat":99},{"version":"609c2913cfa4c7d8eb7d7c8007cfba00694e92cc845c5a046d27da502b414ea0","impliedFormat":99},{"version":"de3ece670e0fe0ff3946f8f1eb5ea77f2bc8075357d70ec39fa274a632710c9d","impliedFormat":99},{"version":"f307f9467cc73637b89522c2be997601309865d2f9c579e7042dd6aa3812579b","impliedFormat":99},{"version":"dca152d78d053b8cfa7e48aca5241d7233f5a286e231b02834d2baec983b040f","impliedFormat":99},{"version":"65cd7581845cbe5cbf464f510bd290e1ffe45dbd14c1c9aabd6c16e8640d3d09","impliedFormat":99},{"version":"082faa78a01670f73442edc07fd485b1264fdc254957eafebe326fe04e56b734","impliedFormat":99},{"version":"797131d1893c8b9331409b820425b98968b7eb3a8850afc14ab6f99e26d0d9b0","impliedFormat":99},{"version":"477cd60757c45f5d5756654e7144aa458319a2382e633b70bafb926bb06967ae","impliedFormat":99},{"version":"d673f965d952ed43a62a5129d499b978fffc5616018c56b0cb03e4b308cef5eb","impliedFormat":99},{"version":"e382e88d97c764830b1f3410be8745080c2bdff1ee97d3f65561fe74856b106a","impliedFormat":99},{"version":"ba67421adf2dfe31f0070e1079375fac129adf0fcca52f4b081d9f10e1d73a1d","impliedFormat":99},{"version":"572be4cf0a3fc21f4125a83994dcf8014684b4fcb5e358c7fa078ff463a19c1b","impliedFormat":99},{"version":"d73f35dc1ad7cc9392e35686ef8a6ae34665872938ea6ba156be6961f8ec4662","impliedFormat":99},{"version":"80a170592e603e284ad530fd350857910f7f975dc9732c69b533c960b8e4a8f6","impliedFormat":99},{"version":"80e1adc0b84ca41bbb6c8ecf3ec21da977da88e8dea93cf8b3ece7c34f765956","impliedFormat":99},{"version":"cf5762d461b424b8dee280d0fb7c825bd7c3da8f2cbb79a73bb10ad1015beb05","impliedFormat":99},{"version":"a074965aa241d6205225b412d388d8acd747e826a5182d8c1e9e1115828212e7","impliedFormat":99},{"version":"e8c87e22a94a8778cc554a2cd472afbee5483c320ec30da5f5499463e26fd30d","impliedFormat":99},{"version":"89f5d1e459b9c9f90dc3487b39849eb64623ab0ce39018a64cd40b5d51e3a100","impliedFormat":99},{"version":"0a1aafcb63bdd84951c9048f8b46d325241e98a70e53909f3cf02f7631156f9b","impliedFormat":99},{"version":"360bbf3815e4fa0ea076c01db1c120430a3331fc262b645bd6ae21bfe65e9b32","impliedFormat":99},{"version":"e15945a2941ccf1be9d2e99d5128810fb168a31c214e4f7e71d0a1b4602d4276","impliedFormat":99},{"version":"627e864eada48cf9315ecd966d6cad0939778c8c58a2903261ec093132cbce74","impliedFormat":99},{"version":"3d24c86fc90b01fbb6d0041aaf9efadcbe071fcf9f58ea1df27313bf951c193e","impliedFormat":99},{"version":"75ad03568e8a05e54dadd150df1e66552233ac6fc230a565ef03a36857c614f0","impliedFormat":99},{"version":"1d645060507ed4e4508b47e18a34c26cf404bbe0f0aeef23d26a608331591da0","impliedFormat":99},{"version":"b8198e2b82be0c07a17d716a4d8695c3c946cbd8cf8f935b87e048927d3c084e","impliedFormat":99},{"version":"f27fd8ac76007f0235d744254a0e5b9ec06b2d78f4a2da452a16f1bca603f48d","impliedFormat":99},{"version":"55ac495222c6ad5401b4703f88cfc54b90d9e1d1feaff7caf71a91b574f5ade1","impliedFormat":99},{"version":"551742f79358ae9a045ad6ca21b859563aca2ccb1d76778582b59f8b525343b4","impliedFormat":99},{"version":"5f937b0c4c3674a256e7f9d9219cbd275677aee914ac7fd9f70e55b7a098fc8f","impliedFormat":99},{"version":"3eba687d68ee64c2489e590ff13c72c5d32413c6327b07adfc4cae38567bb19d","impliedFormat":99},{"version":"76da922752d8a60d9b29e8eeb6f56de3668f7e32e68ba6475237229b224b3952","impliedFormat":99},{"version":"f5f6e090b7ae7061deadaa396e5ea1f3136934c6e1829156912ceaf8bfa7c033","impliedFormat":99},{"version":"ef1e7a6f2777cd26d1e72b8ffd351483024c65a429b0ec553b9adb9f48d4182b","impliedFormat":99},{"version":"1fe9c68bc5ddad57dc6c8f4efb28fd89e8bc76478ce6c4d4cb4089d9d45c3796","impliedFormat":99},{"version":"f43f8ff4d343d30f3938ad38f990bd0e6bd9b601166ed46b0880ab0732299f18","impliedFormat":99},{"version":"cb0f7333d6ecfbf6cdf1a5dc0612f88ecadfb59bce30db5a372e3a572307f2c0","impliedFormat":99},{"version":"cd421a15ab630983d23be5273bce15b55a4b24d429a5144fd9b01ccea60a3aca","impliedFormat":99},{"version":"1e1f228202345b7f7b6ef65cd3fa64fafe7475aa4cd4926bc1ab7a2595fe4814","impliedFormat":99},{"version":"94c66cca7148e25a18ef1588bc0d7fac937708cb4a25654e65963295527f240c","impliedFormat":99},{"version":"9984120689a74b6b8b64e93800ad763faafa7536ab6daf3585f6500f7fde70d9","impliedFormat":99},{"version":"58dd5ec3e4884b840ef01f6631617c0595442a209adc18ae21be8610bdde873b","impliedFormat":99},{"version":"bb46828329f27de133664896886186f7ff815582b91e43133f8ac3c571ba2daa","impliedFormat":99},{"version":"996385791358a3d48db38e97176a8ca68988a713f099a9c8b96d22c27205a860","impliedFormat":99},{"version":"54571a49dffa1c169c8faf91a507463f119c6136741c205c89bb33c83b68c37d","impliedFormat":99},{"version":"2c93b89976464f9cb83534122c3ba88c36a2da7027539e9496f73c919182fcb6","impliedFormat":99},{"version":"976ca73bb646a70dcb4dec3f9f0260203d233a6c2f5f2d7d5e8d00ae9d8b012e","impliedFormat":99},{"version":"a4df8c3fc0f61dd8260cb1b0422b5759df17753759940d96c6f400cafb290cbf","impliedFormat":99},{"version":"582f5a65ef10dabc76ab9336d6685c06cb60220621c368c15b85a144efe1c46d","impliedFormat":99},{"version":"c40d704b7ba35988d42ea949815082cbaf4bfba08b5cef33d2914b8f4724c5c5","impliedFormat":99},{"version":"dae44e3dfa9e6c5df8e3a297aab07d1591e8c063b7f5797d5e1594e4e904e96c","impliedFormat":99},{"version":"8588b73b99b70675717c2e30b95ba8fcf46d598757e1fce4fc8089cc7f3fb236","impliedFormat":99},{"version":"692f08b83e85eb5f504ecbd751b446e45e73f069a185d2593bf6355776e1938c","impliedFormat":99},{"version":"8a37bf1f0e3c1e316476735ec9895ea125857134d3f2e137ee95fe3c68cd0138","impliedFormat":99},{"version":"a97e7f8c67374f8085e72f3c8ff733943ef4c79401b15de22d5146f340c8da30","impliedFormat":99},{"version":"23cee062b5b3f1603d18117dd3cae0dbb3383061b59d0b387b0dfba46c9ef56a","impliedFormat":99},{"version":"00d322de0108c3806447e8c488e43f46f4d6699a89cc10ce006e17ce928ff270","impliedFormat":99},{"version":"9441e7e6a5070e64a18f402f61976d9ce66caa9d79bb484a0feaf33afec5d1da","impliedFormat":99},{"version":"21f9de1cb8b6089a06c8bb98fa96da4ddee646e8252a5438a6e482c49af963c8","impliedFormat":99},{"version":"44b5b421a70baa76ab70513a68651bb09b47f5b37c709a6115070e950e32ab17","impliedFormat":99},{"version":"8bb16be0c988b4739df8ec3b4c55e476a9faa42ae6e67564e834cf945323fdf4","impliedFormat":99},{"version":"8a1e812ab8e4f985ce7c703f79777b3b42e51a534511b4d227a72a197e47628d","impliedFormat":99},{"version":"bc7485cd2d4165544a6933f70788eb56da9a09650ed1f541c8bfba59f792189f","impliedFormat":99},{"version":"3f2ebfe83750677fd2d5cb5c725af733e79b2237800d5841d509065ad2cf502e","impliedFormat":99},{"version":"1167d9bde75beff1c8967b6cfb476516663fdb94b0eab438a73950df1e672106","impliedFormat":99},{"version":"ff0e01daf2efd4f209b86e02b52b40e46fe993e5c5c0a3e7c21f1321da878466","impliedFormat":99},{"version":"e83e1a188ce681fbd4753172ac316b6057b2907f6076ed74a3abb2ccfda778f2","impliedFormat":99},{"version":"eb9794ed31c911aa8a4316c9dec4b0e36b7561e2efe62be40e0fb08c3f767a42","impliedFormat":99},{"version":"a2384d8cd4412ee45556691b44e4ce2ebf847fbdf0358759ffaadac7063e6fdb","impliedFormat":99},{"version":"f9ec8926550f44dc08141d63772ee0f4ecb0a94c71d18c6ffdf4cd048992f80c","impliedFormat":99},{"version":"2026e0617a1bbee1024309482c9d1655327c53b0341f96591dbdf6641ce4cb01","impliedFormat":99},{"version":"3ac2e616c2d910bdf03c4d62b106a3a6db3c1c8a9b3351c1265a19254851fbad","impliedFormat":99},{"version":"60d0db52243676eac0c595f945a391b9329e8031649dff5961438878406ecd84","impliedFormat":99},{"version":"f22962c9455a7d820cfd93bd69d6bbf1a39424154d998f2edc78b323cfc36282","impliedFormat":99},{"version":"e795bf3197fc39551a1afa6fe3c73a2f6d7dbce71d8eb3fa5e7d5d1d4134353c","impliedFormat":99},{"version":"cbfea8bed2673a1e4395d54cbdc005ac4fc6854610057385674cfc0bb466fdb2","impliedFormat":99},{"version":"2c7b926571363075af784dab7f7a12be37303a51e20d81f4e087277bb31b3884","impliedFormat":99},{"version":"23e6ca43d79bea8b6de4e23e2ed240d94f7798479e241c7fb70d02bbddec4b82","impliedFormat":99},{"version":"95e6a93b6f11c8d2eea864ea8daea54423067063490dc36fed6b9ba5dca52314","impliedFormat":99},{"version":"1477ca3b2006b2acc6bc3f90ecb7771a7640b1a0f278303dd2a91328531b18f7","impliedFormat":99},{"version":"538942c9dfd967d22660318c4c40474a630fea891527e5992f955f02d258e803","impliedFormat":99},{"version":"a6ec3329745ebd60d9796a2ea10753ab3d0aeacdfff7c1e62b73abb6fbfaebcf","impliedFormat":99},{"version":"baac9896d29bcc55391d769e408ff400d61273d832dd500f21de766205255acb","impliedFormat":1},{"version":"50bdb18d277698333243c2f737523202cb8877c9e2ae99b0a69c82e37ad821f3","impliedFormat":99},{"version":"bce2c59e9cfac5e94482776960e2b2d63102252b1433fdb463c1b5e5d8b46570","impliedFormat":99},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"378281aa35786c27d5811af7e6bcaa492eebd0c7013d48137c35bbc69a2b9751","affectsGlobalScope":true,"impliedFormat":1},{"version":"3af97acf03cc97de58a3a4bc91f8f616408099bc4233f6d0852e72a8ffb91ac9","affectsGlobalScope":true,"impliedFormat":1},{"version":"1b2dd1cbeb0cc6ae20795958ba5950395ebb2849b7c8326853dd15530c77ab0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"387a023d363f755eb63450a66c28b14cdd7bc30a104565e2dbf0a8988bb4a56c","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcf9ea426ad970f96ac930cd176d5c69c6c24eebd9fc580e1572d6c6a88f62c","impliedFormat":1},{"version":"23cd712e2ce083d68afe69224587438e5914b457b8acf87073c22494d706a3d0","impliedFormat":1},{"version":"487b694c3de27ddf4ad107d4007ad304d29effccf9800c8ae23c2093638d906a","impliedFormat":1},{"version":"3a80bc85f38526ca3b08007ee80712e7bb0601df178b23fbf0bf87036fce40ce","impliedFormat":1},{"version":"ccf4552357ce3c159ef75f0f0114e80401702228f1898bdc9402214c9499e8c0","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"68834d631c8838c715f225509cfc3927913b9cc7a4870460b5b60c8dbdb99baf","impliedFormat":1},{"version":"2931540c47ee0ff8a62860e61782eb17b155615db61e36986e54645ec67f67c2","impliedFormat":1},{"version":"ccab02f3920fc75c01174c47fcf67882a11daf16baf9e81701d0a94636e94556","impliedFormat":1},{"version":"f6faf5f74e4c4cc309a6c6a6c4da02dbb840be5d3e92905a23dcd7b2b0bd1986","impliedFormat":1},{"version":"ea6bc8de8b59f90a7a3960005fd01988f98fd0784e14bc6922dde2e93305ec7d","impliedFormat":1},{"version":"36107995674b29284a115e21a0618c4c2751b32a8766dd4cb3ba740308b16d59","impliedFormat":1},{"version":"914a0ae30d96d71915fc519ccb4efbf2b62c0ddfb3a3fc6129151076bc01dc60","impliedFormat":1},{"version":"33e981bf6376e939f99bd7f89abec757c64897d33c005036b9a10d9587d80187","impliedFormat":1},{"version":"7fd1b31fd35876b0aa650811c25ec2c97a3c6387e5473eb18004bed86cdd76b6","impliedFormat":1},{"version":"b41767d372275c154c7ea6c9d5449d9a741b8ce080f640155cc88ba1763e35b3","impliedFormat":1},{"version":"3bacf516d686d08682751a3bd2519ea3b8041a164bfb4f1d35728993e70a2426","impliedFormat":1},{"version":"7fb266686238369442bd1719bc0d7edd0199da4fb8540354e1ff7f16669b4323","impliedFormat":1},{"version":"0a60a292b89ca7218b8616f78e5bbd1c96b87e048849469cccb4355e98af959a","impliedFormat":1},{"version":"0b6e25234b4eec6ed96ab138d96eb70b135690d7dd01f3dd8a8ab291c35a683a","impliedFormat":1},{"version":"9666f2f84b985b62400d2e5ab0adae9ff44de9b2a34803c2c5bd3c8325b17dc0","impliedFormat":1},{"version":"40cd35c95e9cf22cfa5bd84e96408b6fcbca55295f4ff822390abb11afbc3dca","impliedFormat":1},{"version":"b1616b8959bf557feb16369c6124a97a0e74ed6f49d1df73bb4b9ddf68acf3f3","impliedFormat":1},{"version":"5b03a034c72146b61573aab280f295b015b9168470f2df05f6080a2122f9b4df","impliedFormat":1},{"version":"40b463c6766ca1b689bfcc46d26b5e295954f32ad43e37ee6953c0a677e4ae2b","impliedFormat":1},{"version":"249b9cab7f5d628b71308c7d9bb0a808b50b091e640ba3ed6e2d0516f4a8d91d","impliedFormat":1},{"version":"80aae6afc67faa5ac0b32b5b8bc8cc9f7fa299cff15cf09cc2e11fd28c6ae29e","impliedFormat":1},{"version":"f473cd2288991ff3221165dcf73cd5d24da30391f87e85b3dd4d0450c787a391","impliedFormat":1},{"version":"499e5b055a5aba1e1998f7311a6c441a369831c70905cc565ceac93c28083d53","impliedFormat":1},{"version":"54c3e2371e3d016469ad959697fd257e5621e16296fa67082c2575d0bf8eced0","impliedFormat":1},{"version":"beb8233b2c220cfa0feea31fbe9218d89fa02faa81ef744be8dce5acb89bb1fd","impliedFormat":1},{"version":"c183b931b68ad184bc8e8372bf663f3d33304772fb482f29fb91b3c391031f3e","impliedFormat":1},{"version":"5d0375ca7310efb77e3ef18d068d53784faf62705e0ad04569597ae0e755c401","impliedFormat":1},{"version":"59af37caec41ecf7b2e76059c9672a49e682c1a2aa6f9d7dc78878f53aa284d6","impliedFormat":1},{"version":"addf417b9eb3f938fddf8d81e96393a165e4be0d4a8b6402292f9c634b1cb00d","impliedFormat":1},{"version":"48cc3ec153b50985fb95153258a710782b25975b10dd4ac8a4f3920632d10790","impliedFormat":1},{"version":"adf27937dba6af9f08a68c5b1d3fce0ca7d4b960c57e6d6c844e7d1a8e53adae","impliedFormat":1},{"version":"e1528ca65ac90f6fa0e4a247eb656b4263c470bb22d9033e466463e13395e599","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"866078923a56d026e39243b4392e282c1c63159723996fa89243140e1388a98d","impliedFormat":1},{"version":"830171b27c5fdf9bcbe4cf7d428fcf3ae2c67780fb7fbdccdf70d1623d938bc4","affectsGlobalScope":true,"impliedFormat":1},{"version":"1cf059eaf468efcc649f8cf6075d3cb98e9a35a0fe9c44419ec3d2f5428d7123","affectsGlobalScope":true,"impliedFormat":1},{"version":"e7721c4f69f93c91360c26a0a84ee885997d748237ef78ef665b153e622b36c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d97fb21da858fb18b8ae72c314e9743fd52f73ebe2764e12af1db32fc03f853f","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ea15fd99b2e34cb25fe8346c955000bb70c8b423ae4377a972ef46bfb37f595","impliedFormat":1},{"version":"7cf69dd5502c41644c9e5106210b5da7144800670cbe861f66726fa209e231c4","impliedFormat":1},{"version":"72c1f5e0a28e473026074817561d1bc9647909cf253c8d56c41d1df8d95b85f7","impliedFormat":1},{"version":"f9b4137a0d285bd77dba2e6e895530112264310ae47e07bf311feae428fb8b61","affectsGlobalScope":true,"impliedFormat":1},{"version":"8b21e13ed07d0df176ae31d6b7f01f7b17d66dbeb489c0d31d00de2ca14883da","impliedFormat":1},{"version":"51aecd2df90a3cffea1eb4696b33b2d78594ea2aa2138e6b9471ec4841c6c2ee","impliedFormat":1},{"version":"2c91d8366ff2506296191c26fd97cc1990bab3ee22576275d28b654a21261a44","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"f929f0b6b3421a2d34344b0f421f45aeb2c84ad365ebf29d04312023b3accc58","impliedFormat":1},{"version":"db9ada976f9e52e13f7ae8b9a320f4b67b87685938c5879187d8864b2fbe97f3","impliedFormat":1},{"version":"9f39e70a354d0fba29ac3cdf6eca00b7f9e96f64b2b2780c432e8ea27f133743","impliedFormat":1},{"version":"0dace96cc0f7bc6d0ee2044921bdf19fe42d16284dbcc8ae200800d1c9579335","impliedFormat":1},{"version":"a2e2bbde231b65c53c764c12313897ffdfb6c49183dd31823ee2405f2f7b5378","impliedFormat":1},{"version":"ad1cc0ed328f3f708771272021be61ab146b32ecf2b78f3224959ff1e2cd2a5c","impliedFormat":1},{"version":"c64e1888baaa3253ca4405b455e4bf44f76357868a1bd0a52998ade9a092ad78","affectsGlobalScope":true,"impliedFormat":1},{"version":"d8cf132379078d0974a59df26069689a2d33c7dc826b5be56231841cb2f32e58","impliedFormat":1},{"version":"fbf413fc617837453c878a9174a1f1b383616857a3f8366bc41cf30df4aea7d5","impliedFormat":1},{"version":"148c73ec11318850f571172ceae3e55ce479d850fe18ec8eae0abd99d9f6c319","impliedFormat":1},{"version":"230bdc111d7578276e4a3bb9d075d85c78c6b68f428c3a9935e2eaa10f4ae1f5","impliedFormat":1},{"version":"e8aabbee5e7b9101b03bb4222607d57f38859b8115a8050a4eb91b4ee43a3a73","impliedFormat":1},{"version":"bbf42f98a5819f4f06e18c8b669a994afe9a17fe520ae3454a195e6eabf7700d","impliedFormat":1},{"version":"c0bb1b65757c72bbf8ddf7eaa532223bacf58041ff16c883e76f45506596e925","impliedFormat":1},{"version":"c8b85f7aed29f8f52b813f800611406b0bfe5cf3224d20a4bdda7c7f73ce368e","affectsGlobalScope":true,"impliedFormat":1},{"version":"145dcf25fd4967c610c53d93d7bc4dce8fbb1b6dd7935362472d4ae49363c7ba","impliedFormat":1},{"version":"ff65b8a8bd380c6d129becc35de02f7c29ad7ce03300331ca91311fb4044d1a9","impliedFormat":1},{"version":"76957a6d92b94b9e2852cf527fea32ad2dc0ef50f67fe2b14bd027c9ceef2d86","impliedFormat":1},{"version":"9043daec15206650fa119bad6b8d70136021ea7d52673a71f79a87a42ee38d44","affectsGlobalScope":true,"impliedFormat":1},{"version":"8ba0db41ed773e152647a78e9053e36a747891db41d6a51c7030a0d0f01babb2","affectsGlobalScope":true,"impliedFormat":1},{"version":"a58a15da4c5ba3df60c910a043281256fa52d36a0fcdef9b9100c646282e88dd","impliedFormat":1},{"version":"b36beffbf8acdc3ebc58c8bb4b75574b31a2169869c70fc03f82895b93950a12","impliedFormat":1},{"version":"de263f0089aefbfd73c89562fb7254a7468b1f33b61839aafc3f035d60766cb4","impliedFormat":1},{"version":"77fbe5eecb6fac4b6242bbf6eebfc43e98ce5ccba8fa44e0ef6a95c945ff4d98","impliedFormat":1},{"version":"8c81fd4a110490c43d7c578e8c6f69b3af01717189196899a6a44f93daa57a3a","impliedFormat":1},{"version":"5fb39858b2459864b139950a09adae4f38dad87c25bf572ce414f10e4bd7baab","impliedFormat":1},{"version":"28e3631087ecef78fef8efdb21d4d2509f776ef6f0d660ff605b5ee6a22ebb8c","impliedFormat":1},{"version":"b33b74b97952d9bf4fbd2951dcfbb5136656ddb310ce1c84518aaa77dbca9992","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"45650f47bfb376c8a8ed39d4bcda5902ab899a3150029684ee4c10676d9fbaee","impliedFormat":1},{"version":"6b306cd4282bbb54d4a6bb23cfb7a271160983dfc38c67b5a132504cfcc34896","affectsGlobalScope":true,"impliedFormat":1},{"version":"c119835edf36415081dfd9ed15fc0cd37aaa28d232be029ad073f15f3d88c323","impliedFormat":1},{"version":"450172a56b944c2d83f45cc11c9a388ea967cd301a21202aa0a23c34c7506a18","impliedFormat":1},{"version":"9705cd157ffbb91c5cab48bdd2de5a437a372e63f870f8a8472e72ff634d47c1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ae86f30d5d10e4f75ce8dcb6e1bd3a12ecec3d071a21e8f462c5c85c678efb41","impliedFormat":1},{"version":"72f8936aebf0c4a1adab767b97d34ba7d3a308afcf76de4417b9c16fb92ed548","impliedFormat":1},{"version":"e03460fe72b259f6d25ad029f085e4bedc3f90477da4401d8fbc1efa9793230e","impliedFormat":1},{"version":"4286a3a6619514fca656089aee160bb6f2e77f4dd53dc5a96b26a0b4fc778055","impliedFormat":1},{"version":"04aa8fb012abeecf5666b013c59ba01dca5aa0c28173cb5385bc88d4adeb8d64","affectsGlobalScope":true,"impliedFormat":1},{"version":"3585d6891e9ea18e07d0755a6d90d71331558ba5dc5561933553209f886db106","affectsGlobalScope":true,"impliedFormat":1},{"version":"86be71cbb0593468644932a6eb96d527cfa600cecfc0b698af5f52e51804451d","impliedFormat":1},{"version":"84dd6b0fd2505135692935599d6606f50a421389e8d4535194bcded307ee5cf2","impliedFormat":1},{"version":"0d5b085f36e6dc55bc6332ecb9c733be3a534958c238fb8d8d18d4a2b6f2a15a","impliedFormat":1},{"version":"db19ea066fdc5f97df3f769e582ae3000380ab7942e266654bdb1a4650d19eaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"2a034894bf28c220a331c7a0229d33564803abe2ac1b9a5feee91b6b9b6e88ea","impliedFormat":1},{"version":"d7e9ab1b0996639047c61c1e62f85c620e4382206b3abb430d9a21fb7bc23c77","impliedFormat":1},{"version":"4fe80f12b1d5189384a219095c2eabadbb389c2d3703aae7c5376dbaa56061df","impliedFormat":1},{"version":"9eb1d2dceae65d1c82fc6be7e9b6b19cf3ca93c364678611107362b6ad4d2d41","impliedFormat":1},{"version":"8065e20ac0ad0536d4f1c8d4c2303272a4d25c450bea8d25deb25697d19300e5","impliedFormat":1},{"version":"dec45f9de09cc7e270bff30850bf73947733c12f7ce19e6fb2ac45c5e916a713","impliedFormat":99},{"version":"67775beda879625287491c152cc3a7d6965c95fa1c3da6e1009a108d3da40d44","impliedFormat":99},{"version":"780cc1864dcf0a744405d3ca3eec7f8d88ddc48bb71586dd5083fd24c14d8a30","impliedFormat":99},{"version":"d040afa19893ee77ba3ed57d94b2382035556230c33a30fdb46bb5100107f8af","impliedFormat":99},{"version":"58cb2d252b365e9b9a633394fe074d7cf3b245df62ef7e8b9814a848eb618ac1","impliedFormat":99},{"version":"ab1961b533b2469079885becb37f8c5abaac77708970733a397fd2d80893a631","impliedFormat":99},{"version":"6c6149203ce93a29fae3c6fae53d7236728466663f38a2537886cc12921e89bc","impliedFormat":99},{"version":"81fb9f280cd798de7ee1aba3fefd4436a0e289371787ca496a5be6954075308a","impliedFormat":99},{"version":"ebd59e70e4a12f886e08a737808e06647c6ad5085523d62eb556b5d26b589279","impliedFormat":99},{"version":"fd18ece9519631c80081850283214d587e57eb1e7dbcef8f157644650fb3ab8f","impliedFormat":99},{"version":"389bf30a84eacd13ea0085d104d3515aaa3d635452694614daca74167b10891f","impliedFormat":99},{"version":"71a7cf23f5c62570178e97a3b8bf01dec39fa15dbffd83fa9cc574a3b967ec0d","impliedFormat":99},{"version":"a2bf7cc8225ff1bf3d61c49f9367d0362605266c31c40469353b29ba76aab9a5","impliedFormat":99},{"version":"f815ec90ec1ac209093d72ae2a55801e7718d31f96d8609d048fada45d08750d","impliedFormat":99},{"version":"9eef55bb9b8e62357feb192fc8a59606e0cc3b538a8e0918c848554840f44003","impliedFormat":99},{"version":"37a32ad2f365d44e7583da0af044c5ad4e8a3b2c30d7bc1c03c3d7a52b04a89c","impliedFormat":99},{"version":"ba862399885393b2772d172dd12f30c3cc43dab75f069eb7e3423ed0b4af99d1","impliedFormat":99},{"version":"8a4f137997ea564056c39a66a5a25d6fb65547f8620c08d8d60501f3027b5475","impliedFormat":99},{"version":"410bd54a706431c62cd633c60ed08208cf1e22e838542e5e9485ebcb05531d6a","impliedFormat":99},{"version":"a85ed850e53ba5818c30fb72225380f7bf4d40ddb853850c31d07e33f236d44b","impliedFormat":99},{"version":"c150d569bc4971e3841bef851c564a47321bb45125c6b71aae4c3b737fda2d68","impliedFormat":99},{"version":"cdda3cf2ca51aac798898edafbc3ff57caf123b6d14d49ef0ee4667a9b05150c","impliedFormat":99},{"version":"3791bf73efde41651e13f27673114b4724bc57a12cde5609789118b5ea309e04","impliedFormat":99},{"version":"2295abccae8a095d783c2c8ee83a1dcf844a348ba7b0f4b97833d7ed823f7d38","impliedFormat":99},{"version":"6e034ab4cbb2d741eea27d4e0f98c43dccdd8ee87b426b8cdd7d97e81aca80d7","impliedFormat":99},{"version":"1bc3f4d83a1940c5d3e15ab051294e0d6fd212b781f658a487ff25ff9c21b147","impliedFormat":99},{"version":"cd1370e6ac9f7c3451016cb05d4c81c22c83ee3cb3dcc453642e0562433cb96e","impliedFormat":99},{"version":"968c24aabe19127e76c49c103f9557813ab75a6dbc469407416e12eb4a0fc713","impliedFormat":99},{"version":"9813fb716c4ca142e3dd052934d46d5c848d87e4009189d9ff4300542b4f9d03","impliedFormat":99},{"version":"fe0df76c80554534f0476c3e945f40307856c019d56df42d58488580019d80bb","impliedFormat":99},{"version":"98cb009148290c5843414dbbe79c67984933472d685850f73c12746c72fbcec0","impliedFormat":99},{"version":"726569829a4453652c1f8397a38828dd015bf1c6f072a211564829848b2fbd8b","impliedFormat":99},{"version":"48ab62da2e6c9af0ea4f7acc117fbead3d119f2a48b419ec7bec185faffe0495","impliedFormat":99},{"version":"81e841d4761d00c92c195a690552c7abebbc83dda4a4363d5a9570e9ba200a08","impliedFormat":99},{"version":"9c6ea4272d569fe4460d127e78fdbcd7b2a204cdb4e1dcb86926f3bbea839dbe","impliedFormat":99},{"version":"dcc5197c88b76ed495ace123d65e8151bdea4668bc8a1d1fdb1c7fedb8284212","impliedFormat":99},{"version":"ffd5167c61a2603fd7641c042b93144714c123724cc2abf8cf4ac226a8a22462","impliedFormat":99},{"version":"55db61da5d8eab49cbee9da77886a9723f1c44862f18575d28309c0954578006","impliedFormat":99},{"version":"a650cb8ae518433b39597212ef0e2b8a0ab4ca29091ce88a932f76d68270f4a5","impliedFormat":99},{"version":"f8508f3159c2513c8025402f35b88158c44baffe6c99179849edb9b9551553d9","impliedFormat":99},{"version":"35d5c1165f297b6e6836101fd73d77edbdd0041c4f68b4e1120de2dd9ae9cf49","impliedFormat":99},{"version":"aef001dddb631519245e04737980fc4c6d465cbb9291c95433f854fd98f5669a","impliedFormat":99},{"version":"8e3a0d02119558bbee17791247f4d94ebe6e931efcad4da641da8dc4f49803af","impliedFormat":99},{"version":"5d9d5fe65b442095f6cfdd1895a4e44748f0c999c7d0d5fe842daf5b6b8e8c4e","impliedFormat":99},{"version":"38b0fe6eb9e95f30bf6daee5ad27a0f433d575ec185ab3c9298b4eeccb23be28","impliedFormat":99},{"version":"c30b7aca1a0e86c00946090f1b9cb469922348ab38f6487cba71e6ccc12b578e","impliedFormat":99},{"version":"61a7968139a7749e405993c8b8a13f7d118e256c80e44d0b1e75a716263966c1","impliedFormat":99},{"version":"7e2c7b2c0ddcbb94fc3e12a521c6cfd406153f623b07a0d35b05e19ab972a90c","impliedFormat":99},{"version":"143fb52bee921816e6c2057d91257b2e57461e3d97a6673c40d3d93a77cfc4f4","impliedFormat":99},{"version":"a71d69152440bd05826737b0a763e3fc5cda5fddb5d5463cdf4ce15cf2c5eb08","affectsGlobalScope":true,"impliedFormat":99},{"version":"fdc82f02bf2177acb7e80c2da3c3307fe225bac82bbb7e7ad43d7c4a7abbdb02","impliedFormat":99},{"version":"a4ff64a8d136d339f83dfd419cfdef367ecdea3e1b4b21612114306bd5167e64","impliedFormat":99},{"version":"02edc389fc0db13f8bfd5916792152e32c78b2471d8e1c108449ab17d61ff2d0","impliedFormat":99},{"version":"4dafa339832c161cc37842ae187302eb0c9c73ccbe3a3452f6698186b344814d","impliedFormat":99},{"version":"9a8e0e808ee5360967e1433125c049eec7a5a8ad76f37f3810e524b8400f44f9","impliedFormat":99},{"version":"4046385e102dfac1ab94dcbd9914322aeb1626347d99a3b634d3a8f930feb90f","impliedFormat":99},{"version":"e25e8be69f2fa535cf52b827625832cab4f494d6724bf16a21dc71eac5a6c35d","impliedFormat":99},{"version":"60903befe770d100510500e759039055f160bac86ccfecf9a8ba007780827813","impliedFormat":99},{"version":"19177c3cad69318e072a6855730502db6d9e6999e1f172742d5adf4c265fc039","impliedFormat":99},{"version":"85cffbf5340305bbe9b2cbb1c64716e8f4e39a89f79f2d341d5bd06ba0db481e","impliedFormat":99},{"version":"dd5783a7ec90389ef07872700d862e43d2825b6b1f1565ce91a8c6137bd9d820","impliedFormat":99},{"version":"ea9566808831e2d22ef80f8fad9d875fe544c48abebb858375e76680b1837ba0","impliedFormat":99},{"version":"12c30eb7499679062657c27c65af9da208cd09c69165a2d409286feb73710749","impliedFormat":99},{"version":"fdf94300a89e99d3997569309b1062255196a1538d9e096f321df51031731930","impliedFormat":99},{"version":"b7c126fc81e5292f059f82548b2c1653e43b04f2d3c41543691ff14b01716b53","impliedFormat":99},{"version":"1a9c162fc94895a15331d403f337193e928bba3803445ad15352b351fcc7148e","impliedFormat":99},{"version":"68806100803564cfd123e82c19525827650c405509269e6be53b5187b92533b5","impliedFormat":99},{"version":"002754a1dc73d942d968b83dba30569a221f154ceadc53a791acab712e22f845","impliedFormat":99},{"version":"28828afa3bd95b6c8f45948250f7d6b6975ad6ca1b7496f4f51fe136c4f4b44f","impliedFormat":99},{"version":"03bf211e78f919a0407ec45b5716e5b3e90b00b15a4ed4b403d1f6cc2c816314","impliedFormat":99},{"version":"dea56e131b0459f0e49afd89d0b4ac7bdb5cec513b823fdce27c8be1503de648","impliedFormat":99},{"version":"d6b326e9a030f9c6cb4a2605204ad889c184af4487c7fbc0e78a525bd868917a","impliedFormat":99},{"version":"ddb1847c19a7aaf33a77111f75d1f869d8e1b7ced7e1a78419aeb9618be9c2a0","impliedFormat":99},{"version":"19a7eb01ecbb998fe53cc7482793d7d1632680efc627a64e2b029ae2fa90869c","impliedFormat":99},{"version":"c95dc8dd8ca63602ea3b84906146baeecb73e23d9a4d1fbe3be8dbdad818fb89","impliedFormat":99},{"version":"e925b013d8b5da33475fcc738a821e8c9b01100827b8d3b37155cb0f9e0ee893","impliedFormat":99},{"version":"ef5c86110e2a2b5e04013042e144e2d2649fe3acb1d2c4390f737323cf4a1d03","impliedFormat":99},{"version":"50d186beced9766c705c9004d8028b5367d49580067011f340c3143d5a5e9216","impliedFormat":99},{"version":"1ca067133bef8b43d2714a7bae7d34c127f54f81dff7a83eca73a610dd24703c","impliedFormat":99},{"version":"1f051658bba33b46a1df4578884de037d69aabbf0210e82932555f8fdf112ff4","impliedFormat":99},{"version":"65cca5c0737aec4ab5b51cc19f77496a4be599a52c707f9bd4a2bc77b40148f9","impliedFormat":99},{"version":"2c9cac3239bafcf7a305d40f4cd7246a00485effad45923027786cc19af7cc20","impliedFormat":99},{"version":"7f6bf112c285bbb379ce4e369eb74d9a4ffdd2d3287eae459b1e79a03c57534f","impliedFormat":99},{"version":"9853cfdb6c7399831b2d5bc50b2e486b5c8c71db9d5844892145ab153925d44c","impliedFormat":99},{"version":"229ebf0d50d079dfa7cb3c61bb7e8676b3144541a82a971e28e6e5fc629b6554","impliedFormat":99},{"version":"259d60e2e8e3061f7c8f6b39ac4e19215d9286352310811b68539f7ee294b2ce","impliedFormat":99},{"version":"36af3dd51c7546974b4b018d4552a784e5d9b0a773c9edd422be8da63870735f","impliedFormat":99},{"version":"ba3c7e364b8b5830754a5d6d512469deb4a21ef123a5245fb2d8f4e7671d675c","impliedFormat":99},{"version":"c31d4d9b9aeee28d9fcb369204d5f51ed309cc1243be780ecb24db85408ec598","impliedFormat":1},{"version":"e1a3930856d8f6a01240c81768c0219e4b1021f92e505f67b95c45fd7f11795c","impliedFormat":1},{"version":"00dc354ee459661a3cb0356cff235f70e1610cd73528ce93affea80b4dd5c78b","impliedFormat":1},{"version":"47b8ab85d767a048463ec56d44bfe5bd07afa6fbfc8de7852e0ada6f16def8fc","impliedFormat":99},{"version":"dbd3f5a1f93f02954f3b464f26eab8641d4c213d90f9bf617fe3b8f3849c9d18","impliedFormat":99},{"version":"4ec093251efddcde9d0f919ae82777239610d3bb370b00827ae68b69dadcaff1","impliedFormat":99},{"version":"f3b7bdf93383ff9915175a5d11225c149e84c3165be0c65d26bb335159938b2b","impliedFormat":99},{"version":"d8c7b598125989e79f4ecfe938a4361479032d71d166d4553167357f057e4d13","impliedFormat":99},{"version":"43fd5a6eb5266881b395804e017bf90610e2e7f086546279af38c0e79627c681","impliedFormat":99},{"version":"269adfb142b079ef8c65d7e2a55c3e4e0f24b6c92a6335c521915dbcacba5845","impliedFormat":99},{"version":"645ad15f1a2984a76ace15fe768078a0bfe6e1c937371396722c03c13061d82e","impliedFormat":99},{"version":"48f00880d80d979e9c3550b7cfe4e10380e15cbb073859a501708ec1bff2da7e","signature":"a816045e1e9ba4a732965a7288601964318bd4913825e49874dca4607a1d6dd9","impliedFormat":99},{"version":"f4e1d9fa3491ab080154f3e64546bd8fa3423152cfeb9c75b0ebd4fbb2363eaf","signature":"eb326b0cb25f5e7bd8dc7363e23525e706c863622b2d43f6052b38569deeefb4","impliedFormat":99},{"version":"24ecd0a454457bcd58299f09e38a168e37bbfaea1154e6cbd76a8c73de3ab73f","signature":"c2a076b3da71d922ad7c7fa4072f0fae2c2f48bbcfd3dc9f495774a2d0ba95af","impliedFormat":99},{"version":"160f0ead84a9f7633dab85d5ad548656728f1f425c37dc1569e5138158217f59","impliedFormat":1},{"version":"df424f6792bb98e8f55dab61223a8478b9d168343ac69be93bb839992c826e3a","impliedFormat":99},{"version":"85084e627d7ea72de0be9747dc76e47821f18be7e12df42ccedf0b660ede3a62","impliedFormat":99},{"version":"015521a1033d0a7904185fcd0d152c48b10f9997c7bd996244b7cb1054e167aa","impliedFormat":99},{"version":"b868a4dcf20a4486f30e467c27c0e32bf09b332bcbf593094988c8b93bdbddab","impliedFormat":99},{"version":"4e9242f0f5a9ea036e4b5b1e42d8f0f36515762418699edfc4bdb0f00f3d0fb3","impliedFormat":99},{"version":"d5bcd6bb185c3550cc7d069923b765b8c0e1df5453f30e5d6e4acd3ded127ed2","impliedFormat":99},{"version":"3c3d864def1f201c8decddcbbabf52bb620a1db12253463f68be949a206d79d5","impliedFormat":99},{"version":"124febcad9bddb40e806d8e4967207d7b153b24d6fb6a284847dcb23e2a0e46d","impliedFormat":99},{"version":"2355069fd98be212e7834ea837bc2b4e0fe5ed26a5bd31b5fd9b5b7dc55533e8","impliedFormat":99},{"version":"bf5215d3f8e484d6c8060d27db73a83b9c50a2dc6bb58640b5a5d31e1f1b1a67","impliedFormat":99},{"version":"37d04989fa0f07102167c781e8a5ef7766713a0bcff472611cb6783f9dece600","impliedFormat":99},{"version":"9e8b2d6da28b82ad6c937e645346391db625bf156e11c898f176bb16030d6da1","impliedFormat":1},{"version":"a54e750673fa112977de5bc9581446353ed8fd040cf8d1d5fb6cbc835333e21b","impliedFormat":99},{"version":"57d87f2bfe07baed58c19f3ce23761fda4bc1f06841b7e2356a0dd54e5bceb00","impliedFormat":99},{"version":"2d526d2a2d6dfd1980fb6eaf7aa668c24d339e27b41cac2a72efc75abe301b35","impliedFormat":1},{"version":"7b2e65c2e1aa2b4b59916242dec157a3aefb0e07c695c4c8a2a186824844c160","impliedFormat":99},{"version":"4aad89db6d7200979bb0aee1119395f0e6509c729a92ab4eae7e15d08a3ebec4","impliedFormat":1},{"version":"ac2fd7445e1409ece49caa503bd8550c336dac198ff1b368214e1c76cc4c0997","impliedFormat":99},{"version":"6a88ec358f82bf136439cf7d614b3ea78a3ccca74462d51e2b7dc05aad0bd26b","impliedFormat":99},{"version":"5664bb13c14dbfa57c8c7d33927b322667c4c42325568541dc127d1193c6c2e5","impliedFormat":99},{"version":"8101abc6ce805c1a1971d76d5530f0d095968324a631ad807b7804ef5d683d0e","impliedFormat":99},{"version":"4760dcea1fd6491d603637a16238b3f43f3e58b151c3f0a772f29af4331026e5","impliedFormat":99},{"version":"f657d0bc469c0886baf9aab04dc84c4728f665601c698ebc1a98b522bb23780e","signature":"7ccd650afbf72d09558ed600e7e8e9a99e035365a83be5c498658c5f3175c73f","impliedFormat":99},{"version":"a360296bfc5cdfdce01ca11b4f147e9e5e2d9010d204027aec30f996007cc8dd","signature":"e6a786d16ccc54d7a171ed9bebe29c1f4d88b61efac384cf58537f18a4af8891","impliedFormat":99},{"version":"2e52ed39bad09088e7f4de81be6735d3279eb17d99bbcccb90da63d6780347f4","signature":"657a8363e28a3b2ec508bcab17edccac1a9a24b8a0cee9804b6dc06bde7b063e","impliedFormat":99},{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"293eadad9dead44c6fd1db6de552663c33f215c55a1bfa2802a1bceed88ff0ec","impliedFormat":1},{"version":"833e92c058d033cde3f29a6c7603f517001d1ddd8020bc94d2067a3bc69b2a8e","impliedFormat":1},{"version":"08b2fae7b0f553ad9f79faec864b179fc58bc172e295a70943e8585dd85f600c","impliedFormat":1},{"version":"f12edf1672a94c578eca32216839604f1e1c16b40a1896198deabf99c882b340","impliedFormat":1},{"version":"e3498cf5e428e6c6b9e97bd88736f26d6cf147dedbfa5a8ad3ed8e05e059af8a","impliedFormat":1},{"version":"dba3f34531fd9b1b6e072928b6f885aa4d28dd6789cbd0e93563d43f4b62da53","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"e4b03ddcf8563b1c0aee782a185286ed85a255ce8a30df8453aade2188bbc904","impliedFormat":1},{"version":"2329d90062487e1eaca87b5e06abcbbeeecf80a82f65f949fd332cfcf824b87b","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"4fdb529707247a1a917a4626bfb6a293d52cd8ee57ccf03830ec91d39d606d6d","impliedFormat":1},{"version":"a9ebb67d6bbead6044b43714b50dcb77b8f7541ffe803046fdec1714c1eba206","impliedFormat":1},{"version":"5780b706cece027f0d4444fbb4e1af62dc51e19da7c3d3719f67b22b033859b9","impliedFormat":1},{"version":"f17ed72d1b1882ab6dc66d45e699f757d15bba0807af2fc9c3ec98fe367611c1","impliedFormat":99},{"version":"3f4248944c380b995618847b254e64c4fad48e31650c692bb01424df48618a86","impliedFormat":99},{"version":"6ca0b2845c6e95e75e42fe99026c7545c8b4cfd9bc1750bb5421b0699ef89c35","impliedFormat":99},{"version":"b03cab886d1ea68398cec813d86857b97f7100fcc17ad8eabdb033dd6251953f","impliedFormat":99},{"version":"337a6cd986dceb55f190c2a01858f0a60a5b3029162c4b013d138652db54a3de","impliedFormat":99},{"version":"d691e546590145171d00d78b341bd3ca4844c96eb34f870be84058a1cab585c3","impliedFormat":99},{"version":"8bc1dbdd3e321b5d229e8318476dd47fdad09bd65895db488b651e11867da7ca","impliedFormat":99},{"version":"895e52fcf5d8eaed1a26b47cd4ad27c951e991cc636ea9f171753979d7eee705","signature":"02ae6f8ab4f8d635a2d711aba1ded65176b4a52bf40e0af9a2ab6a653f812057","impliedFormat":99},{"version":"63dcd5602271284e880b12e9d9a620cd850385349e2067e5c978ea3b58d98bad","impliedFormat":99},{"version":"d6bcefa3d64d5aeecd2b6e845e2a9c7606264978a5b6016ac86ce0b1e8464f86","impliedFormat":1},{"version":"ca6a20b472db4e7ee64a85da5d0f60a3e8edf794b744322177ca47a46eea13e3","impliedFormat":99},{"version":"bcc46059f0fad6ca43dd37cc1acd50aad0a97881d13c6442c99c6decdae633e9","impliedFormat":99},{"version":"bf5bc928be96aa0a211368e8e6119d5802c62a2093a457b65169d0d8b7882e5a","impliedFormat":99},{"version":"cb6a1627e3fc3111705a14f2d0bb1f16f3e094bee8dc0969fbe639b86ed5190a","impliedFormat":99},{"version":"a5c81bb5e8c86ae3bcb26e718a3ca3164cc6fc183006d3963423dca97e5383bb","signature":"5c12c1541d6c7ca2af9cf3ba65866413954a18d052a36a11cb1846a6d4534cae","impliedFormat":99},{"version":"bb82070788a53fadd6aca679cccda9b1364320f05118293edc47f34071ca1ee9","signature":"d27161d21198235f8c13e09dd603b74cbcc28b420279c34fc8c59fbf2de8eaef","impliedFormat":99},{"version":"1bbfc5a74d2fd69c3ccdfb362d6842073062f80e341bb2660a07a36314002842","signature":"0cc72a8d7000f480371bb85253fc1b01ae9695a6f5a3b3c0c833b269ffdac4d8","impliedFormat":99},{"version":"5b6abd1562c576bf267f6b724f9f5af55cd1d97a48f76e7bbfedea70757e53d8","signature":"c739a678119ca4b81c5a00a02286b738d8f733e13999ce57e595c66e7d8b85a9","impliedFormat":99}],"root":[[403,405],[429,431],453,[460,463]],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"experimentalDecorators":true,"module":199,"noEmitOnError":true,"noImplicitAny":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","removeComments":false,"rootDir":"..","skipLibCheck":true,"strictBindCallApply":true,"strictFunctionTypes":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":99},"referencedMap":[[429,1],[430,1],[431,1],[404,2],[405,3],[142,4],[108,5],[136,6],[137,6],[133,7],[134,7],[132,8],[140,9],[141,10],[109,11],[138,7],[139,7],[112,7],[110,12],[175,13],[168,14],[173,15],[171,16],[162,10],[174,10],[172,15],[167,17],[166,18],[169,19],[397,20],[395,21],[396,15],[347,22],[346,23],[343,24],[345,25],[344,26],[165,27],[163,10],[164,10],[402,28],[398,29],[399,30],[400,31],[401,32],[183,33],[365,34],[380,35],[182,36],[378,37],[372,38],[376,39],[374,40],[379,41],[351,42],[350,43],[366,44],[146,45],[458,46],[457,47],[428,48],[456,16],[184,49],[352,50],[383,51],[111,7],[170,15],[381,52],[377,53],[349,54],[382,55],[189,56],[188,57],[185,16],[187,10],[186,16],[181,58],[180,59],[179,60],[178,61],[177,10],[161,62],[155,63],[154,64],[156,10],[157,65],[159,66],[158,65],[160,67],[152,68],[153,69],[151,70],[150,71],[370,72],[371,53],[375,53],[373,53],[368,53],[369,73],[367,16],[342,74],[340,35],[339,75],[341,76],[338,77],[334,78],[192,79],[332,80],[335,81],[333,82],[336,10],[324,83],[326,84],[329,85],[327,86],[328,87],[331,88],[330,89],[325,90],[323,91],[337,92],[315,93],[348,94],[316,95],[190,10],[193,10],[320,96],[322,97],[321,98],[313,99],[310,55],[305,100],[311,101],[312,100],[306,55],[307,55],[309,102],[308,55],[304,103],[145,104],[144,105],[143,104],[391,106],[446,10],[450,107],[452,108],[459,109],[449,110],[448,111],[451,10],[447,112],[455,10],[96,113],[135,10],[84,10],[91,114],[88,114],[90,115],[89,116],[95,116],[94,116],[87,114],[93,117],[92,10],[86,118],[83,119],[81,10],[82,119],[363,120],[364,121],[359,122],[357,10],[361,123],[360,124],[358,10],[362,125],[355,126],[356,127],[104,128],[103,10],[97,129],[98,130],[107,10],[319,131],[318,132],[317,93],[314,10],[126,10],[106,133],[101,134],[102,135],[105,70],[100,10],[99,10],[424,136],[420,10],[409,10],[415,10],[416,10],[410,10],[411,10],[419,137],[408,10],[413,10],[417,10],[412,10],[422,10],[407,138],[414,10],[426,10],[149,139],[147,10],[148,140],[131,141],[114,10],[116,142],[118,10],[119,70],[130,70],[120,10],[121,142],[122,142],[117,10],[123,10],[124,10],[125,10],[127,143],[128,10],[113,10],[129,10],[425,144],[427,145],[115,10],[354,146],[353,10],[393,147],[392,10],[423,10],[406,10],[247,148],[248,148],[249,149],[196,150],[250,151],[251,152],[252,153],[194,10],[253,154],[254,155],[255,156],[256,157],[257,158],[258,159],[259,159],[260,160],[261,161],[262,162],[263,163],[197,10],[195,10],[264,164],[265,165],[266,166],[300,167],[267,168],[268,10],[269,169],[270,170],[271,171],[272,172],[273,173],[274,174],[275,175],[276,176],[277,177],[278,177],[279,178],[280,10],[281,179],[282,180],[284,181],[283,182],[285,183],[286,184],[287,185],[288,186],[289,187],[290,188],[291,189],[292,190],[293,191],[294,192],[295,193],[296,194],[297,195],[198,10],[199,138],[200,10],[201,10],[243,196],[244,197],[245,10],[246,183],[298,198],[299,199],[418,10],[191,10],[85,10],[176,10],[385,200],[386,200],[388,201],[389,202],[384,10],[454,10],[301,203],[303,204],[387,10],[421,10],[302,205],[390,206],[394,207],[79,10],[80,10],[14,10],[13,10],[2,10],[15,10],[16,10],[17,10],[18,10],[19,10],[20,10],[21,10],[22,10],[3,10],[23,10],[24,10],[4,10],[25,10],[29,10],[26,10],[27,10],[28,10],[30,10],[31,10],[32,10],[5,10],[33,10],[34,10],[35,10],[36,10],[6,10],[40,10],[37,10],[38,10],[39,10],[41,10],[7,10],[42,10],[47,10],[48,10],[43,10],[44,10],[45,10],[46,10],[8,10],[52,10],[49,10],[50,10],[51,10],[53,10],[9,10],[54,10],[55,10],[56,10],[58,10],[57,10],[59,10],[60,10],[10,10],[61,10],[62,10],[63,10],[11,10],[64,10],[65,10],[66,10],[67,10],[68,10],[1,10],[69,10],[70,10],[12,10],[74,10],[72,10],[77,10],[76,10],[71,10],[75,10],[73,10],[78,10],[219,208],[231,209],[217,210],[232,96],[241,211],[208,212],[209,213],[207,214],[240,215],[235,216],[239,217],[211,218],[228,219],[210,220],[238,221],[205,222],[206,216],[212,223],[213,10],[218,224],[216,223],[203,225],[242,226],[233,227],[222,228],[221,223],[223,229],[226,230],[220,231],[224,232],[236,215],[214,233],[215,234],[227,235],[204,96],[230,236],[229,223],[225,237],[234,10],[202,10],[237,238],[445,239],[435,240],[437,241],[444,242],[439,10],[440,10],[438,243],[441,244],[432,10],[433,10],[434,239],[436,245],[442,10],[443,246],[462,247],[461,248],[463,249],[460,250],[453,251],[403,16]],"version":"5.9.3"}
|
package/package.json
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@jrmc/adonis-mcp",
|
|
3
|
+
"version": "1.0.0-alpha.2",
|
|
4
|
+
"keywords": [
|
|
5
|
+
"adonisjs",
|
|
6
|
+
"mcp",
|
|
7
|
+
"ace",
|
|
8
|
+
"commands"
|
|
9
|
+
],
|
|
10
|
+
"author": "Jeremy Chaufourier jeremy@chaufourier.fr",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"description": "AdonisJS MCP - MCP server for your AdonisJS applications.",
|
|
13
|
+
"type": "module",
|
|
14
|
+
"main": "build/index.js",
|
|
15
|
+
"repository": {
|
|
16
|
+
"type": "git",
|
|
17
|
+
"url": "git+https://github.com/batosai/adonis-mcp.git"
|
|
18
|
+
},
|
|
19
|
+
"files": [
|
|
20
|
+
"build"
|
|
21
|
+
],
|
|
22
|
+
"scripts": {
|
|
23
|
+
"typecheck": "tsc --noEmit",
|
|
24
|
+
"build": "npm run clean && tsc && npm run copyfiles",
|
|
25
|
+
"copyfiles": "copyfiles \"stubs/**/**/*.stub\" build",
|
|
26
|
+
"postbuild": "adonis-kit index build/commands",
|
|
27
|
+
"prepublishOnly": "npm run build",
|
|
28
|
+
"clean": "del-cli build",
|
|
29
|
+
"format": "prettier --write ."
|
|
30
|
+
},
|
|
31
|
+
"exports": {
|
|
32
|
+
".": "./build/index.js",
|
|
33
|
+
"./types": "./build/src/types.js",
|
|
34
|
+
"./providers/*": "./build/providers/*.js",
|
|
35
|
+
"./commands": "./build/commands/main.js",
|
|
36
|
+
"./commands/*": "./build/commands/*.js",
|
|
37
|
+
"./controllers/*": "./build/src/controllers/*.js",
|
|
38
|
+
"./mcp_provider": "./build/providers/mcp_provider.js"
|
|
39
|
+
},
|
|
40
|
+
"dependencies": {
|
|
41
|
+
"@modelcontextprotocol/sdk": "^1.20.2"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@adonisjs/assembler": "^7.8.2",
|
|
45
|
+
"@adonisjs/core": "^6.19.0",
|
|
46
|
+
"@adonisjs/prettier-config": "^1.4.5",
|
|
47
|
+
"@adonisjs/tsconfig": "^1.4.1",
|
|
48
|
+
"@types/node": "^24.0.11",
|
|
49
|
+
"copyfiles": "^2.4.1",
|
|
50
|
+
"del-cli": "^7.0.0",
|
|
51
|
+
"prettier": "^3.6.2",
|
|
52
|
+
"typescript": "^5.8.3"
|
|
53
|
+
},
|
|
54
|
+
"prettier": "@adonisjs/prettier-config",
|
|
55
|
+
"publishConfig": {
|
|
56
|
+
"access": "public",
|
|
57
|
+
"tag": "alpha"
|
|
58
|
+
},
|
|
59
|
+
"volta": {
|
|
60
|
+
"node": "22.17.0"
|
|
61
|
+
}
|
|
62
|
+
}
|