@soederpop/luca 0.0.16 → 0.0.19
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/assistants/codingAssistant/CORE.md +25 -0
- package/assistants/codingAssistant/hooks.ts +3 -0
- package/assistants/codingAssistant/tools.ts +108 -0
- package/package.json +2 -2
- package/src/agi/features/assistant.ts +48 -0
- package/src/bootstrap/generated.ts +1 -1
- package/src/commands/chat.ts +83 -7
- package/src/introspection/generated.agi.ts +448 -448
- package/src/introspection/generated.node.ts +1073 -1073
- package/src/introspection/generated.web.ts +1 -1
- package/src/node/features/repl.ts +19 -6
- package/src/scaffolds/generated.ts +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { setBuildTimeData, setContainerBuildTimeData } from './index.js';
|
|
2
2
|
|
|
3
3
|
// Auto-generated introspection registry data
|
|
4
|
-
// Generated at: 2026-03-
|
|
4
|
+
// Generated at: 2026-03-20T21:12:58.846Z
|
|
5
5
|
|
|
6
6
|
setBuildTimeData('features.googleDocs', {
|
|
7
7
|
"id": "features.googleDocs",
|
|
@@ -9519,6 +9519,202 @@ setBuildTimeData('clients.websocket', {
|
|
|
9519
9519
|
]
|
|
9520
9520
|
});
|
|
9521
9521
|
|
|
9522
|
+
setBuildTimeData('clients.supabase', {
|
|
9523
|
+
"id": "clients.supabase",
|
|
9524
|
+
"description": "Supabase client for the Luca container system. Wraps the official `@supabase/supabase-js` SDK and exposes it through Luca's typed state, events, and introspection system. The SDK is isomorphic so this single implementation works in both Node and browser containers. Use `client.sdk` for full SDK access, or use the convenience wrappers for common operations (auth, database queries, storage, edge functions, realtime).",
|
|
9525
|
+
"shortcut": "clients.supabase",
|
|
9526
|
+
"className": "SupabaseClient",
|
|
9527
|
+
"methods": {
|
|
9528
|
+
"from": {
|
|
9529
|
+
"description": "Start a query on a Postgres table or view.",
|
|
9530
|
+
"parameters": {
|
|
9531
|
+
"table": {
|
|
9532
|
+
"type": "string",
|
|
9533
|
+
"description": "The table or view name to query"
|
|
9534
|
+
}
|
|
9535
|
+
},
|
|
9536
|
+
"required": [
|
|
9537
|
+
"table"
|
|
9538
|
+
],
|
|
9539
|
+
"returns": "void"
|
|
9540
|
+
},
|
|
9541
|
+
"rpc": {
|
|
9542
|
+
"description": "Call a Postgres function (RPC).",
|
|
9543
|
+
"parameters": {
|
|
9544
|
+
"fn": {
|
|
9545
|
+
"type": "string",
|
|
9546
|
+
"description": "The function name"
|
|
9547
|
+
},
|
|
9548
|
+
"params": {
|
|
9549
|
+
"type": "Record<string, unknown>",
|
|
9550
|
+
"description": "Arguments to pass to the function"
|
|
9551
|
+
},
|
|
9552
|
+
"options": {
|
|
9553
|
+
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
9554
|
+
"description": "Optional settings (head, get, count)"
|
|
9555
|
+
}
|
|
9556
|
+
},
|
|
9557
|
+
"required": [
|
|
9558
|
+
"fn"
|
|
9559
|
+
],
|
|
9560
|
+
"returns": "void"
|
|
9561
|
+
},
|
|
9562
|
+
"signInWithPassword": {
|
|
9563
|
+
"description": "Sign in with email and password.",
|
|
9564
|
+
"parameters": {
|
|
9565
|
+
"email": {
|
|
9566
|
+
"type": "string",
|
|
9567
|
+
"description": "Parameter email"
|
|
9568
|
+
},
|
|
9569
|
+
"password": {
|
|
9570
|
+
"type": "string",
|
|
9571
|
+
"description": "Parameter password"
|
|
9572
|
+
}
|
|
9573
|
+
},
|
|
9574
|
+
"required": [
|
|
9575
|
+
"email",
|
|
9576
|
+
"password"
|
|
9577
|
+
],
|
|
9578
|
+
"returns": "void"
|
|
9579
|
+
},
|
|
9580
|
+
"signUp": {
|
|
9581
|
+
"description": "Create a new user account with email and password.",
|
|
9582
|
+
"parameters": {
|
|
9583
|
+
"email": {
|
|
9584
|
+
"type": "string",
|
|
9585
|
+
"description": "Parameter email"
|
|
9586
|
+
},
|
|
9587
|
+
"password": {
|
|
9588
|
+
"type": "string",
|
|
9589
|
+
"description": "Parameter password"
|
|
9590
|
+
}
|
|
9591
|
+
},
|
|
9592
|
+
"required": [
|
|
9593
|
+
"email",
|
|
9594
|
+
"password"
|
|
9595
|
+
],
|
|
9596
|
+
"returns": "void"
|
|
9597
|
+
},
|
|
9598
|
+
"signOut": {
|
|
9599
|
+
"description": "Sign the current user out.",
|
|
9600
|
+
"parameters": {},
|
|
9601
|
+
"required": [],
|
|
9602
|
+
"returns": "void"
|
|
9603
|
+
},
|
|
9604
|
+
"getSession": {
|
|
9605
|
+
"description": "Get the current session, if any.",
|
|
9606
|
+
"parameters": {},
|
|
9607
|
+
"required": [],
|
|
9608
|
+
"returns": "void"
|
|
9609
|
+
},
|
|
9610
|
+
"getUser": {
|
|
9611
|
+
"description": "Get the current user, if any.",
|
|
9612
|
+
"parameters": {},
|
|
9613
|
+
"required": [],
|
|
9614
|
+
"returns": "void"
|
|
9615
|
+
},
|
|
9616
|
+
"invoke": {
|
|
9617
|
+
"description": "Invoke a Supabase Edge Function by name.",
|
|
9618
|
+
"parameters": {
|
|
9619
|
+
"name": {
|
|
9620
|
+
"type": "string",
|
|
9621
|
+
"description": "Parameter name"
|
|
9622
|
+
},
|
|
9623
|
+
"body": {
|
|
9624
|
+
"type": "any",
|
|
9625
|
+
"description": "Parameter body"
|
|
9626
|
+
}
|
|
9627
|
+
},
|
|
9628
|
+
"required": [
|
|
9629
|
+
"name"
|
|
9630
|
+
],
|
|
9631
|
+
"returns": "void"
|
|
9632
|
+
},
|
|
9633
|
+
"subscribe": {
|
|
9634
|
+
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
9635
|
+
"parameters": {
|
|
9636
|
+
"channelName": {
|
|
9637
|
+
"type": "string",
|
|
9638
|
+
"description": "A name for this subscription channel"
|
|
9639
|
+
},
|
|
9640
|
+
"table": {
|
|
9641
|
+
"type": "string",
|
|
9642
|
+
"description": "The table to listen to"
|
|
9643
|
+
},
|
|
9644
|
+
"callback": {
|
|
9645
|
+
"type": "(payload: any) => void",
|
|
9646
|
+
"description": "Called with the payload on each change"
|
|
9647
|
+
},
|
|
9648
|
+
"event": {
|
|
9649
|
+
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
9650
|
+
"description": "The event type to listen for (default: all changes)"
|
|
9651
|
+
}
|
|
9652
|
+
},
|
|
9653
|
+
"required": [
|
|
9654
|
+
"channelName",
|
|
9655
|
+
"table",
|
|
9656
|
+
"callback"
|
|
9657
|
+
],
|
|
9658
|
+
"returns": "RealtimeChannel"
|
|
9659
|
+
},
|
|
9660
|
+
"unsubscribe": {
|
|
9661
|
+
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
9662
|
+
"parameters": {
|
|
9663
|
+
"channelName": {
|
|
9664
|
+
"type": "string",
|
|
9665
|
+
"description": "The channel name to remove"
|
|
9666
|
+
}
|
|
9667
|
+
},
|
|
9668
|
+
"required": [
|
|
9669
|
+
"channelName"
|
|
9670
|
+
],
|
|
9671
|
+
"returns": "void"
|
|
9672
|
+
},
|
|
9673
|
+
"unsubscribeAll": {
|
|
9674
|
+
"description": "Unsubscribe and remove all realtime channels.",
|
|
9675
|
+
"parameters": {},
|
|
9676
|
+
"required": [],
|
|
9677
|
+
"returns": "void"
|
|
9678
|
+
},
|
|
9679
|
+
"connect": {
|
|
9680
|
+
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
9681
|
+
"parameters": {},
|
|
9682
|
+
"required": [],
|
|
9683
|
+
"returns": "void"
|
|
9684
|
+
},
|
|
9685
|
+
"disconnect": {
|
|
9686
|
+
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
9687
|
+
"parameters": {},
|
|
9688
|
+
"required": [],
|
|
9689
|
+
"returns": "void"
|
|
9690
|
+
}
|
|
9691
|
+
},
|
|
9692
|
+
"getters": {
|
|
9693
|
+
"sdk": {
|
|
9694
|
+
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
9695
|
+
"returns": "SupabaseSDKClient<any, any>"
|
|
9696
|
+
},
|
|
9697
|
+
"storage": {
|
|
9698
|
+
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
9699
|
+
"returns": "any"
|
|
9700
|
+
},
|
|
9701
|
+
"functions": {
|
|
9702
|
+
"description": "Returns the Supabase Functions client.",
|
|
9703
|
+
"returns": "any"
|
|
9704
|
+
}
|
|
9705
|
+
},
|
|
9706
|
+
"events": {},
|
|
9707
|
+
"state": {},
|
|
9708
|
+
"options": {},
|
|
9709
|
+
"envVars": [],
|
|
9710
|
+
"examples": [
|
|
9711
|
+
{
|
|
9712
|
+
"language": "ts",
|
|
9713
|
+
"code": "const supabase = container.client('supabase', {\n supabaseUrl: 'https://xyz.supabase.co',\n supabaseKey: 'your-anon-key',\n})\n\n// Query data\nconst { data } = await supabase.from('users').select('*')\n\n// Auth\nawait supabase.signInWithPassword('user@example.com', 'password')\n\n// Realtime\nsupabase.subscribe('changes', 'users', (payload) => {\n console.log('Change:', payload)\n})"
|
|
9714
|
+
}
|
|
9715
|
+
]
|
|
9716
|
+
});
|
|
9717
|
+
|
|
9522
9718
|
setBuildTimeData('clients.openai', {
|
|
9523
9719
|
"id": "clients.openai",
|
|
9524
9720
|
"description": "OpenAI client — wraps the OpenAI SDK for chat completions, responses API, embeddings, and image generation. Provides convenience methods for common operations while tracking token usage and request counts. Supports both the Chat Completions API and the newer Responses API.",
|
|
@@ -9787,55 +9983,257 @@ setBuildTimeData('clients.openai', {
|
|
|
9787
9983
|
]
|
|
9788
9984
|
});
|
|
9789
9985
|
|
|
9790
|
-
setBuildTimeData('clients.
|
|
9791
|
-
"id": "clients.
|
|
9792
|
-
"description": "
|
|
9793
|
-
"shortcut": "clients.
|
|
9794
|
-
"className": "
|
|
9986
|
+
setBuildTimeData('clients.elevenlabs', {
|
|
9987
|
+
"id": "clients.elevenlabs",
|
|
9988
|
+
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
9989
|
+
"shortcut": "clients.elevenlabs",
|
|
9990
|
+
"className": "ElevenLabsClient",
|
|
9795
9991
|
"methods": {
|
|
9796
|
-
"
|
|
9797
|
-
"description": "
|
|
9798
|
-
"parameters": {
|
|
9799
|
-
|
|
9800
|
-
|
|
9801
|
-
|
|
9802
|
-
|
|
9803
|
-
|
|
9804
|
-
|
|
9805
|
-
|
|
9806
|
-
|
|
9807
|
-
},
|
|
9808
|
-
"required": [
|
|
9809
|
-
"prompt"
|
|
9810
|
-
],
|
|
9811
|
-
"returns": "Promise<{ prompt_id: string; number: number }>",
|
|
9992
|
+
"beforeRequest": {
|
|
9993
|
+
"description": "Inject the xi-api-key header before each request.",
|
|
9994
|
+
"parameters": {},
|
|
9995
|
+
"required": [],
|
|
9996
|
+
"returns": "void"
|
|
9997
|
+
},
|
|
9998
|
+
"connect": {
|
|
9999
|
+
"description": "Validate the API key by listing available models.",
|
|
10000
|
+
"parameters": {},
|
|
10001
|
+
"required": [],
|
|
10002
|
+
"returns": "Promise<this>",
|
|
9812
10003
|
"examples": [
|
|
9813
10004
|
{
|
|
9814
10005
|
"language": "ts",
|
|
9815
|
-
"code": "
|
|
10006
|
+
"code": "await el.connect()"
|
|
9816
10007
|
}
|
|
9817
10008
|
]
|
|
9818
10009
|
},
|
|
9819
|
-
"
|
|
9820
|
-
"description": "
|
|
9821
|
-
"parameters": {},
|
|
9822
|
-
"required": [],
|
|
9823
|
-
"returns": "Promise<{ queue_running: any[]; queue_pending: any[] }>"
|
|
9824
|
-
},
|
|
9825
|
-
"getHistory": {
|
|
9826
|
-
"description": "Get execution history, optionally for a specific prompt.",
|
|
10010
|
+
"listVoices": {
|
|
10011
|
+
"description": "List available voices with optional search and filtering.",
|
|
9827
10012
|
"parameters": {
|
|
9828
|
-
"
|
|
9829
|
-
"type": "string",
|
|
9830
|
-
"description": "
|
|
10013
|
+
"options": {
|
|
10014
|
+
"type": "{\n search?: string\n category?: string\n voice_type?: string\n page_size?: number\n next_page_token?: string\n }",
|
|
10015
|
+
"description": "Query parameters for filtering voices"
|
|
9831
10016
|
}
|
|
9832
10017
|
},
|
|
9833
10018
|
"required": [],
|
|
9834
|
-
"returns": "Promise<
|
|
9835
|
-
|
|
9836
|
-
|
|
9837
|
-
|
|
9838
|
-
|
|
10019
|
+
"returns": "Promise<any>",
|
|
10020
|
+
"examples": [
|
|
10021
|
+
{
|
|
10022
|
+
"language": "ts",
|
|
10023
|
+
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
10024
|
+
}
|
|
10025
|
+
]
|
|
10026
|
+
},
|
|
10027
|
+
"getVoice": {
|
|
10028
|
+
"description": "Get details for a single voice.",
|
|
10029
|
+
"parameters": {
|
|
10030
|
+
"voiceId": {
|
|
10031
|
+
"type": "string",
|
|
10032
|
+
"description": "The voice ID to look up"
|
|
10033
|
+
}
|
|
10034
|
+
},
|
|
10035
|
+
"required": [
|
|
10036
|
+
"voiceId"
|
|
10037
|
+
],
|
|
10038
|
+
"returns": "Promise<any>",
|
|
10039
|
+
"examples": [
|
|
10040
|
+
{
|
|
10041
|
+
"language": "ts",
|
|
10042
|
+
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
10043
|
+
}
|
|
10044
|
+
]
|
|
10045
|
+
},
|
|
10046
|
+
"listModels": {
|
|
10047
|
+
"description": "List available TTS models.",
|
|
10048
|
+
"parameters": {},
|
|
10049
|
+
"required": [],
|
|
10050
|
+
"returns": "Promise<any[]>",
|
|
10051
|
+
"examples": [
|
|
10052
|
+
{
|
|
10053
|
+
"language": "ts",
|
|
10054
|
+
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
10055
|
+
}
|
|
10056
|
+
]
|
|
10057
|
+
},
|
|
10058
|
+
"synthesize": {
|
|
10059
|
+
"description": "Synthesize speech from text, returning audio as a Buffer.",
|
|
10060
|
+
"parameters": {
|
|
10061
|
+
"text": {
|
|
10062
|
+
"type": "string",
|
|
10063
|
+
"description": "The text to convert to speech"
|
|
10064
|
+
},
|
|
10065
|
+
"options": {
|
|
10066
|
+
"type": "SynthesizeOptions",
|
|
10067
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
10068
|
+
"properties": {
|
|
10069
|
+
"voiceId": {
|
|
10070
|
+
"type": "string",
|
|
10071
|
+
"description": ""
|
|
10072
|
+
},
|
|
10073
|
+
"modelId": {
|
|
10074
|
+
"type": "string",
|
|
10075
|
+
"description": ""
|
|
10076
|
+
},
|
|
10077
|
+
"outputFormat": {
|
|
10078
|
+
"type": "string",
|
|
10079
|
+
"description": ""
|
|
10080
|
+
},
|
|
10081
|
+
"voiceSettings": {
|
|
10082
|
+
"type": "ElevenLabsVoiceSettings",
|
|
10083
|
+
"description": ""
|
|
10084
|
+
},
|
|
10085
|
+
"disableCache": {
|
|
10086
|
+
"type": "boolean",
|
|
10087
|
+
"description": ""
|
|
10088
|
+
}
|
|
10089
|
+
}
|
|
10090
|
+
}
|
|
10091
|
+
},
|
|
10092
|
+
"required": [
|
|
10093
|
+
"text"
|
|
10094
|
+
],
|
|
10095
|
+
"returns": "Promise<Buffer>",
|
|
10096
|
+
"examples": [
|
|
10097
|
+
{
|
|
10098
|
+
"language": "ts",
|
|
10099
|
+
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
10100
|
+
}
|
|
10101
|
+
]
|
|
10102
|
+
},
|
|
10103
|
+
"say": {
|
|
10104
|
+
"description": "Synthesize speech and write the audio to a file.",
|
|
10105
|
+
"parameters": {
|
|
10106
|
+
"text": {
|
|
10107
|
+
"type": "string",
|
|
10108
|
+
"description": "The text to convert to speech"
|
|
10109
|
+
},
|
|
10110
|
+
"outputPath": {
|
|
10111
|
+
"type": "string",
|
|
10112
|
+
"description": "File path to write the audio to"
|
|
10113
|
+
},
|
|
10114
|
+
"options": {
|
|
10115
|
+
"type": "SynthesizeOptions",
|
|
10116
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
10117
|
+
"properties": {
|
|
10118
|
+
"voiceId": {
|
|
10119
|
+
"type": "string",
|
|
10120
|
+
"description": ""
|
|
10121
|
+
},
|
|
10122
|
+
"modelId": {
|
|
10123
|
+
"type": "string",
|
|
10124
|
+
"description": ""
|
|
10125
|
+
},
|
|
10126
|
+
"outputFormat": {
|
|
10127
|
+
"type": "string",
|
|
10128
|
+
"description": ""
|
|
10129
|
+
},
|
|
10130
|
+
"voiceSettings": {
|
|
10131
|
+
"type": "ElevenLabsVoiceSettings",
|
|
10132
|
+
"description": ""
|
|
10133
|
+
},
|
|
10134
|
+
"disableCache": {
|
|
10135
|
+
"type": "boolean",
|
|
10136
|
+
"description": ""
|
|
10137
|
+
}
|
|
10138
|
+
}
|
|
10139
|
+
}
|
|
10140
|
+
},
|
|
10141
|
+
"required": [
|
|
10142
|
+
"text",
|
|
10143
|
+
"outputPath"
|
|
10144
|
+
],
|
|
10145
|
+
"returns": "Promise<string>",
|
|
10146
|
+
"examples": [
|
|
10147
|
+
{
|
|
10148
|
+
"language": "ts",
|
|
10149
|
+
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
10150
|
+
}
|
|
10151
|
+
]
|
|
10152
|
+
}
|
|
10153
|
+
},
|
|
10154
|
+
"getters": {
|
|
10155
|
+
"apiKey": {
|
|
10156
|
+
"description": "The resolved API key from options or environment.",
|
|
10157
|
+
"returns": "string"
|
|
10158
|
+
}
|
|
10159
|
+
},
|
|
10160
|
+
"events": {
|
|
10161
|
+
"failure": {
|
|
10162
|
+
"name": "failure",
|
|
10163
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10164
|
+
"arguments": {}
|
|
10165
|
+
},
|
|
10166
|
+
"voices": {
|
|
10167
|
+
"name": "voices",
|
|
10168
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10169
|
+
"arguments": {}
|
|
10170
|
+
},
|
|
10171
|
+
"speech": {
|
|
10172
|
+
"name": "speech",
|
|
10173
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10174
|
+
"arguments": {}
|
|
10175
|
+
}
|
|
10176
|
+
},
|
|
10177
|
+
"state": {},
|
|
10178
|
+
"options": {},
|
|
10179
|
+
"envVars": [],
|
|
10180
|
+
"examples": [
|
|
10181
|
+
{
|
|
10182
|
+
"language": "ts",
|
|
10183
|
+
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
10184
|
+
}
|
|
10185
|
+
]
|
|
10186
|
+
});
|
|
10187
|
+
|
|
10188
|
+
setBuildTimeData('clients.comfyui', {
|
|
10189
|
+
"id": "clients.comfyui",
|
|
10190
|
+
"description": "ComfyUI client — execute Stable Diffusion workflows via the ComfyUI API. Connects to a ComfyUI instance to queue prompts, track execution via WebSocket or polling, and download generated images. Supports both UI-format and API-format workflows with automatic conversion.",
|
|
10191
|
+
"shortcut": "clients.comfyui",
|
|
10192
|
+
"className": "ComfyUIClient",
|
|
10193
|
+
"methods": {
|
|
10194
|
+
"queuePrompt": {
|
|
10195
|
+
"description": "Queue a prompt (API-format workflow) for execution.",
|
|
10196
|
+
"parameters": {
|
|
10197
|
+
"prompt": {
|
|
10198
|
+
"type": "Record<string, any>",
|
|
10199
|
+
"description": "The API-format workflow object"
|
|
10200
|
+
},
|
|
10201
|
+
"clientId": {
|
|
10202
|
+
"type": "string",
|
|
10203
|
+
"description": "Override the client ID for this request"
|
|
10204
|
+
}
|
|
10205
|
+
},
|
|
10206
|
+
"required": [
|
|
10207
|
+
"prompt"
|
|
10208
|
+
],
|
|
10209
|
+
"returns": "Promise<{ prompt_id: string; number: number }>",
|
|
10210
|
+
"examples": [
|
|
10211
|
+
{
|
|
10212
|
+
"language": "ts",
|
|
10213
|
+
"code": "const { prompt_id } = await comfy.queuePrompt(apiWorkflow)"
|
|
10214
|
+
}
|
|
10215
|
+
]
|
|
10216
|
+
},
|
|
10217
|
+
"getQueue": {
|
|
10218
|
+
"description": "Get the current prompt queue status.",
|
|
10219
|
+
"parameters": {},
|
|
10220
|
+
"required": [],
|
|
10221
|
+
"returns": "Promise<{ queue_running: any[]; queue_pending: any[] }>"
|
|
10222
|
+
},
|
|
10223
|
+
"getHistory": {
|
|
10224
|
+
"description": "Get execution history, optionally for a specific prompt.",
|
|
10225
|
+
"parameters": {
|
|
10226
|
+
"promptId": {
|
|
10227
|
+
"type": "string",
|
|
10228
|
+
"description": "If provided, returns history for this prompt only"
|
|
10229
|
+
}
|
|
10230
|
+
},
|
|
10231
|
+
"required": [],
|
|
10232
|
+
"returns": "Promise<Record<string, any>>"
|
|
10233
|
+
},
|
|
10234
|
+
"getSystemStats": {
|
|
10235
|
+
"description": "Get system stats including GPU memory and queue info.",
|
|
10236
|
+
"parameters": {},
|
|
9839
10237
|
"required": [],
|
|
9840
10238
|
"returns": "Promise<any>"
|
|
9841
10239
|
},
|
|
@@ -10039,194 +10437,157 @@ setBuildTimeData('clients.comfyui', {
|
|
|
10039
10437
|
]
|
|
10040
10438
|
});
|
|
10041
10439
|
|
|
10042
|
-
setBuildTimeData('
|
|
10043
|
-
"id": "
|
|
10044
|
-
"description": "
|
|
10045
|
-
"shortcut": "
|
|
10046
|
-
"className": "
|
|
10440
|
+
setBuildTimeData('servers.mcp', {
|
|
10441
|
+
"id": "servers.mcp",
|
|
10442
|
+
"description": "MCP (Model Context Protocol) server for exposing tools, resources, and prompts to AI clients like Claude Code. Uses the low-level MCP SDK Server class directly with Zod 4 native JSON Schema conversion. Register tools, resources, and prompts programmatically, then start the server over stdio (for CLI integration) or HTTP (for remote access).",
|
|
10443
|
+
"shortcut": "servers.mcp",
|
|
10444
|
+
"className": "MCPServer",
|
|
10047
10445
|
"methods": {
|
|
10048
|
-
"
|
|
10049
|
-
"description": "
|
|
10050
|
-
"parameters": {},
|
|
10051
|
-
"required": [],
|
|
10052
|
-
"returns": "void"
|
|
10053
|
-
},
|
|
10054
|
-
"connect": {
|
|
10055
|
-
"description": "Validate the API key by listing available models.",
|
|
10056
|
-
"parameters": {},
|
|
10057
|
-
"required": [],
|
|
10058
|
-
"returns": "Promise<this>",
|
|
10059
|
-
"examples": [
|
|
10060
|
-
{
|
|
10061
|
-
"language": "ts",
|
|
10062
|
-
"code": "await el.connect()"
|
|
10063
|
-
}
|
|
10064
|
-
]
|
|
10065
|
-
},
|
|
10066
|
-
"listVoices": {
|
|
10067
|
-
"description": "List available voices with optional search and filtering.",
|
|
10446
|
+
"tool": {
|
|
10447
|
+
"description": "Register an MCP tool. The tool's Zod schema is converted to JSON Schema for the protocol listing, and used for runtime argument validation. Tool handlers can return a string (auto-wrapped as text content) or a full CallToolResult object for advanced responses (images, errors, etc).",
|
|
10068
10448
|
"parameters": {
|
|
10449
|
+
"name": {
|
|
10450
|
+
"type": "string",
|
|
10451
|
+
"description": "Unique tool name"
|
|
10452
|
+
},
|
|
10069
10453
|
"options": {
|
|
10070
|
-
"type": "
|
|
10071
|
-
"description": "
|
|
10454
|
+
"type": "ToolRegistrationOptions",
|
|
10455
|
+
"description": "Tool schema, description, and handler",
|
|
10456
|
+
"properties": {
|
|
10457
|
+
"schema": {
|
|
10458
|
+
"type": "z.ZodObject<any>",
|
|
10459
|
+
"description": ""
|
|
10460
|
+
},
|
|
10461
|
+
"description": {
|
|
10462
|
+
"type": "string",
|
|
10463
|
+
"description": ""
|
|
10464
|
+
},
|
|
10465
|
+
"handler": {
|
|
10466
|
+
"type": "(args: any, ctx: MCPContext) => any",
|
|
10467
|
+
"description": ""
|
|
10468
|
+
}
|
|
10469
|
+
}
|
|
10072
10470
|
}
|
|
10073
10471
|
},
|
|
10074
|
-
"required": [
|
|
10075
|
-
|
|
10076
|
-
|
|
10077
|
-
|
|
10078
|
-
|
|
10079
|
-
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
10080
|
-
}
|
|
10081
|
-
]
|
|
10472
|
+
"required": [
|
|
10473
|
+
"name",
|
|
10474
|
+
"options"
|
|
10475
|
+
],
|
|
10476
|
+
"returns": "this"
|
|
10082
10477
|
},
|
|
10083
|
-
"
|
|
10084
|
-
"description": "
|
|
10478
|
+
"resource": {
|
|
10479
|
+
"description": "Register an MCP resource. Resources expose data (files, configs, etc) that AI clients can read by URI. Accepts either a handler function directly or an options object with additional metadata (name, description, mimeType).",
|
|
10085
10480
|
"parameters": {
|
|
10086
|
-
"
|
|
10481
|
+
"uri": {
|
|
10087
10482
|
"type": "string",
|
|
10088
|
-
"description": "
|
|
10483
|
+
"description": "Unique resource URI (e.g. \"project://readme\")"
|
|
10484
|
+
},
|
|
10485
|
+
"handlerOrOptions": {
|
|
10486
|
+
"type": "ResourceRegistrationOptions['handler'] | ResourceRegistrationOptions",
|
|
10487
|
+
"description": "Handler function or options object with handler"
|
|
10089
10488
|
}
|
|
10090
10489
|
},
|
|
10091
10490
|
"required": [
|
|
10092
|
-
"
|
|
10491
|
+
"uri",
|
|
10492
|
+
"handlerOrOptions"
|
|
10093
10493
|
],
|
|
10094
|
-
"returns": "
|
|
10095
|
-
"examples": [
|
|
10096
|
-
{
|
|
10097
|
-
"language": "ts",
|
|
10098
|
-
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
10099
|
-
}
|
|
10100
|
-
]
|
|
10101
|
-
},
|
|
10102
|
-
"listModels": {
|
|
10103
|
-
"description": "List available TTS models.",
|
|
10104
|
-
"parameters": {},
|
|
10105
|
-
"required": [],
|
|
10106
|
-
"returns": "Promise<any[]>",
|
|
10107
|
-
"examples": [
|
|
10108
|
-
{
|
|
10109
|
-
"language": "ts",
|
|
10110
|
-
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
10111
|
-
}
|
|
10112
|
-
]
|
|
10494
|
+
"returns": "this"
|
|
10113
10495
|
},
|
|
10114
|
-
"
|
|
10115
|
-
"description": "
|
|
10496
|
+
"prompt": {
|
|
10497
|
+
"description": "Register an MCP prompt. Prompts are reusable message templates that AI clients can invoke with optional string arguments.",
|
|
10116
10498
|
"parameters": {
|
|
10117
|
-
"
|
|
10499
|
+
"name": {
|
|
10118
10500
|
"type": "string",
|
|
10119
|
-
"description": "
|
|
10501
|
+
"description": "Unique prompt name"
|
|
10120
10502
|
},
|
|
10121
10503
|
"options": {
|
|
10122
|
-
"type": "
|
|
10123
|
-
"description": "
|
|
10504
|
+
"type": "PromptRegistrationOptions",
|
|
10505
|
+
"description": "Prompt handler, optional args schema, and description",
|
|
10124
10506
|
"properties": {
|
|
10125
|
-
"
|
|
10126
|
-
"type": "string",
|
|
10127
|
-
"description": ""
|
|
10128
|
-
},
|
|
10129
|
-
"modelId": {
|
|
10130
|
-
"type": "string",
|
|
10131
|
-
"description": ""
|
|
10132
|
-
},
|
|
10133
|
-
"outputFormat": {
|
|
10507
|
+
"description": {
|
|
10134
10508
|
"type": "string",
|
|
10135
10509
|
"description": ""
|
|
10136
10510
|
},
|
|
10137
|
-
"
|
|
10138
|
-
"type": "
|
|
10511
|
+
"args": {
|
|
10512
|
+
"type": "Record<string, z.ZodType>",
|
|
10139
10513
|
"description": ""
|
|
10140
10514
|
},
|
|
10141
|
-
"
|
|
10142
|
-
"type": "
|
|
10515
|
+
"handler": {
|
|
10516
|
+
"type": "(args: Record<string, string | undefined>, ctx: MCPContext) => Promise<PromptMessage[]> | PromptMessage[]",
|
|
10143
10517
|
"description": ""
|
|
10144
10518
|
}
|
|
10145
10519
|
}
|
|
10146
10520
|
}
|
|
10147
10521
|
},
|
|
10148
10522
|
"required": [
|
|
10149
|
-
"
|
|
10523
|
+
"name",
|
|
10524
|
+
"options"
|
|
10150
10525
|
],
|
|
10151
|
-
"returns": "
|
|
10152
|
-
"examples": [
|
|
10153
|
-
{
|
|
10154
|
-
"language": "ts",
|
|
10155
|
-
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
10156
|
-
}
|
|
10157
|
-
]
|
|
10526
|
+
"returns": "this"
|
|
10158
10527
|
},
|
|
10159
|
-
"
|
|
10160
|
-
"description": "
|
|
10528
|
+
"configure": {
|
|
10529
|
+
"description": "Configure the MCP protocol server and register all protocol handlers. Called automatically before start() if not already configured.",
|
|
10530
|
+
"parameters": {},
|
|
10531
|
+
"required": [],
|
|
10532
|
+
"returns": "void"
|
|
10533
|
+
},
|
|
10534
|
+
"start": {
|
|
10535
|
+
"description": "Start the MCP server with the specified transport.",
|
|
10161
10536
|
"parameters": {
|
|
10162
|
-
"text": {
|
|
10163
|
-
"type": "string",
|
|
10164
|
-
"description": "The text to convert to speech"
|
|
10165
|
-
},
|
|
10166
|
-
"outputPath": {
|
|
10167
|
-
"type": "string",
|
|
10168
|
-
"description": "File path to write the audio to"
|
|
10169
|
-
},
|
|
10170
10537
|
"options": {
|
|
10171
|
-
"type": "
|
|
10172
|
-
"description": "
|
|
10538
|
+
"type": "{\n transport?: 'stdio' | 'http'\n port?: number\n host?: string\n mcpCompat?: MCPCompatMode\n stdioCompat?: StdioCompatMode\n }",
|
|
10539
|
+
"description": "Transport configuration. Defaults to stdio.",
|
|
10173
10540
|
"properties": {
|
|
10174
|
-
"
|
|
10175
|
-
"type": "
|
|
10176
|
-
"description": ""
|
|
10177
|
-
},
|
|
10178
|
-
"modelId": {
|
|
10179
|
-
"type": "string",
|
|
10180
|
-
"description": ""
|
|
10181
|
-
},
|
|
10182
|
-
"outputFormat": {
|
|
10183
|
-
"type": "string",
|
|
10184
|
-
"description": ""
|
|
10185
|
-
},
|
|
10186
|
-
"voiceSettings": {
|
|
10187
|
-
"type": "ElevenLabsVoiceSettings",
|
|
10188
|
-
"description": ""
|
|
10541
|
+
"transport": {
|
|
10542
|
+
"type": "any",
|
|
10543
|
+
"description": "'stdio' for CLI integration, 'http' for remote access"
|
|
10189
10544
|
},
|
|
10190
|
-
"
|
|
10191
|
-
"type": "
|
|
10192
|
-
"description": ""
|
|
10545
|
+
"port": {
|
|
10546
|
+
"type": "any",
|
|
10547
|
+
"description": "Port for HTTP transport (default 3001)"
|
|
10193
10548
|
}
|
|
10194
10549
|
}
|
|
10195
10550
|
}
|
|
10196
10551
|
},
|
|
10197
|
-
"required": [
|
|
10198
|
-
|
|
10199
|
-
|
|
10200
|
-
|
|
10201
|
-
"
|
|
10202
|
-
"
|
|
10203
|
-
|
|
10204
|
-
|
|
10205
|
-
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
10206
|
-
}
|
|
10207
|
-
]
|
|
10552
|
+
"required": [],
|
|
10553
|
+
"returns": "void"
|
|
10554
|
+
},
|
|
10555
|
+
"stop": {
|
|
10556
|
+
"description": "Stop the MCP server and close all connections.",
|
|
10557
|
+
"parameters": {},
|
|
10558
|
+
"required": [],
|
|
10559
|
+
"returns": "void"
|
|
10208
10560
|
}
|
|
10209
10561
|
},
|
|
10210
10562
|
"getters": {
|
|
10211
|
-
"
|
|
10212
|
-
"description": "The
|
|
10213
|
-
"returns": "
|
|
10563
|
+
"mcpServer": {
|
|
10564
|
+
"description": "The underlying MCP protocol server instance. Created during configure().",
|
|
10565
|
+
"returns": "MCPProtocolServer"
|
|
10566
|
+
},
|
|
10567
|
+
"handlerContext": {
|
|
10568
|
+
"description": "The handler context passed to all tool, resource, and prompt handlers.",
|
|
10569
|
+
"returns": "MCPContext"
|
|
10214
10570
|
}
|
|
10215
10571
|
},
|
|
10216
10572
|
"events": {
|
|
10217
|
-
"
|
|
10218
|
-
"name": "
|
|
10219
|
-
"description": "Event emitted by
|
|
10573
|
+
"toolRegistered": {
|
|
10574
|
+
"name": "toolRegistered",
|
|
10575
|
+
"description": "Event emitted by MCPServer",
|
|
10220
10576
|
"arguments": {}
|
|
10221
10577
|
},
|
|
10222
|
-
"
|
|
10223
|
-
"name": "
|
|
10224
|
-
"description": "Event emitted by
|
|
10578
|
+
"resourceRegistered": {
|
|
10579
|
+
"name": "resourceRegistered",
|
|
10580
|
+
"description": "Event emitted by MCPServer",
|
|
10225
10581
|
"arguments": {}
|
|
10226
10582
|
},
|
|
10227
|
-
"
|
|
10228
|
-
"name": "
|
|
10229
|
-
"description": "Event emitted by
|
|
10583
|
+
"promptRegistered": {
|
|
10584
|
+
"name": "promptRegistered",
|
|
10585
|
+
"description": "Event emitted by MCPServer",
|
|
10586
|
+
"arguments": {}
|
|
10587
|
+
},
|
|
10588
|
+
"toolCalled": {
|
|
10589
|
+
"name": "toolCalled",
|
|
10590
|
+
"description": "Event emitted by MCPServer",
|
|
10230
10591
|
"arguments": {}
|
|
10231
10592
|
}
|
|
10232
10593
|
},
|
|
@@ -10236,192 +10597,113 @@ setBuildTimeData('clients.elevenlabs', {
|
|
|
10236
10597
|
"examples": [
|
|
10237
10598
|
{
|
|
10238
10599
|
"language": "ts",
|
|
10239
|
-
"code": "const
|
|
10600
|
+
"code": "const mcp = container.server('mcp', { serverName: 'my-server', serverVersion: '1.0.0' })\n\nmcp.tool('search_files', {\n schema: z.object({ pattern: z.string() }),\n description: 'Search for files',\n handler: async (args, ctx) => {\n return ctx.container.feature('fs').walk('.', { include: [args.pattern] }).files.join('\\n')\n }\n})\n\nawait mcp.start()"
|
|
10240
10601
|
}
|
|
10241
10602
|
]
|
|
10242
10603
|
});
|
|
10243
10604
|
|
|
10244
|
-
setBuildTimeData('
|
|
10245
|
-
"id": "
|
|
10246
|
-
"description": "
|
|
10247
|
-
"shortcut": "
|
|
10248
|
-
"className": "
|
|
10605
|
+
setBuildTimeData('servers.express', {
|
|
10606
|
+
"id": "servers.express",
|
|
10607
|
+
"description": "Express.js HTTP server with automatic endpoint mounting, CORS, and SPA history fallback. Wraps an Express application with convention-based endpoint discovery. Endpoints defined as modules are automatically mounted as routes. Supports static file serving, CORS configuration, and single-page app history fallback out of the box.",
|
|
10608
|
+
"shortcut": "servers.express",
|
|
10609
|
+
"className": "ExpressServer",
|
|
10249
10610
|
"methods": {
|
|
10250
|
-
"
|
|
10251
|
-
"description": "Start
|
|
10611
|
+
"start": {
|
|
10612
|
+
"description": "Start the Express HTTP server. A runtime `port` overrides the constructor option and is written to state so `server.port` always reflects reality.",
|
|
10252
10613
|
"parameters": {
|
|
10253
|
-
"
|
|
10254
|
-
"type": "
|
|
10255
|
-
"description": "
|
|
10614
|
+
"options": {
|
|
10615
|
+
"type": "StartOptions",
|
|
10616
|
+
"description": "Optional runtime overrides for port and host"
|
|
10256
10617
|
}
|
|
10257
10618
|
},
|
|
10258
|
-
"required": [
|
|
10259
|
-
"table"
|
|
10260
|
-
],
|
|
10619
|
+
"required": [],
|
|
10261
10620
|
"returns": "void"
|
|
10262
10621
|
},
|
|
10263
|
-
"
|
|
10264
|
-
"description": "
|
|
10265
|
-
"parameters": {
|
|
10266
|
-
|
|
10267
|
-
"type": "string",
|
|
10268
|
-
"description": "The function name"
|
|
10269
|
-
},
|
|
10270
|
-
"params": {
|
|
10271
|
-
"type": "Record<string, unknown>",
|
|
10272
|
-
"description": "Arguments to pass to the function"
|
|
10273
|
-
},
|
|
10274
|
-
"options": {
|
|
10275
|
-
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
10276
|
-
"description": "Optional settings (head, get, count)"
|
|
10277
|
-
}
|
|
10278
|
-
},
|
|
10279
|
-
"required": [
|
|
10280
|
-
"fn"
|
|
10281
|
-
],
|
|
10622
|
+
"stop": {
|
|
10623
|
+
"description": "",
|
|
10624
|
+
"parameters": {},
|
|
10625
|
+
"required": [],
|
|
10282
10626
|
"returns": "void"
|
|
10283
10627
|
},
|
|
10284
|
-
"
|
|
10285
|
-
"description": "
|
|
10286
|
-
"parameters": {
|
|
10287
|
-
|
|
10288
|
-
"type": "string",
|
|
10289
|
-
"description": "Parameter email"
|
|
10290
|
-
},
|
|
10291
|
-
"password": {
|
|
10292
|
-
"type": "string",
|
|
10293
|
-
"description": "Parameter password"
|
|
10294
|
-
}
|
|
10295
|
-
},
|
|
10296
|
-
"required": [
|
|
10297
|
-
"email",
|
|
10298
|
-
"password"
|
|
10299
|
-
],
|
|
10628
|
+
"configure": {
|
|
10629
|
+
"description": "",
|
|
10630
|
+
"parameters": {},
|
|
10631
|
+
"required": [],
|
|
10300
10632
|
"returns": "void"
|
|
10301
10633
|
},
|
|
10302
|
-
"
|
|
10303
|
-
"description": "
|
|
10634
|
+
"useEndpoint": {
|
|
10635
|
+
"description": "",
|
|
10304
10636
|
"parameters": {
|
|
10305
|
-
"
|
|
10306
|
-
"type": "
|
|
10307
|
-
"description": "Parameter
|
|
10308
|
-
},
|
|
10309
|
-
"password": {
|
|
10310
|
-
"type": "string",
|
|
10311
|
-
"description": "Parameter password"
|
|
10637
|
+
"endpoint": {
|
|
10638
|
+
"type": "Endpoint",
|
|
10639
|
+
"description": "Parameter endpoint"
|
|
10312
10640
|
}
|
|
10313
10641
|
},
|
|
10314
10642
|
"required": [
|
|
10315
|
-
"
|
|
10316
|
-
"password"
|
|
10643
|
+
"endpoint"
|
|
10317
10644
|
],
|
|
10318
|
-
"returns": "
|
|
10319
|
-
},
|
|
10320
|
-
"signOut": {
|
|
10321
|
-
"description": "Sign the current user out.",
|
|
10322
|
-
"parameters": {},
|
|
10323
|
-
"required": [],
|
|
10324
|
-
"returns": "void"
|
|
10325
|
-
},
|
|
10326
|
-
"getSession": {
|
|
10327
|
-
"description": "Get the current session, if any.",
|
|
10328
|
-
"parameters": {},
|
|
10329
|
-
"required": [],
|
|
10330
|
-
"returns": "void"
|
|
10331
|
-
},
|
|
10332
|
-
"getUser": {
|
|
10333
|
-
"description": "Get the current user, if any.",
|
|
10334
|
-
"parameters": {},
|
|
10335
|
-
"required": [],
|
|
10336
|
-
"returns": "void"
|
|
10645
|
+
"returns": "this"
|
|
10337
10646
|
},
|
|
10338
|
-
"
|
|
10339
|
-
"description": "
|
|
10647
|
+
"useEndpoints": {
|
|
10648
|
+
"description": "",
|
|
10340
10649
|
"parameters": {
|
|
10341
|
-
"
|
|
10650
|
+
"dir": {
|
|
10342
10651
|
"type": "string",
|
|
10343
|
-
"description": "Parameter
|
|
10344
|
-
},
|
|
10345
|
-
"body": {
|
|
10346
|
-
"type": "any",
|
|
10347
|
-
"description": "Parameter body"
|
|
10652
|
+
"description": "Parameter dir"
|
|
10348
10653
|
}
|
|
10349
10654
|
},
|
|
10350
10655
|
"required": [
|
|
10351
|
-
"
|
|
10656
|
+
"dir"
|
|
10352
10657
|
],
|
|
10353
|
-
"returns": "
|
|
10658
|
+
"returns": "Promise<this>"
|
|
10354
10659
|
},
|
|
10355
|
-
"
|
|
10356
|
-
"description": "
|
|
10660
|
+
"useEndpointModules": {
|
|
10661
|
+
"description": "",
|
|
10357
10662
|
"parameters": {
|
|
10358
|
-
"
|
|
10359
|
-
"type": "
|
|
10360
|
-
"description": "
|
|
10361
|
-
},
|
|
10362
|
-
"table": {
|
|
10363
|
-
"type": "string",
|
|
10364
|
-
"description": "The table to listen to"
|
|
10365
|
-
},
|
|
10366
|
-
"callback": {
|
|
10367
|
-
"type": "(payload: any) => void",
|
|
10368
|
-
"description": "Called with the payload on each change"
|
|
10369
|
-
},
|
|
10370
|
-
"event": {
|
|
10371
|
-
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
10372
|
-
"description": "The event type to listen for (default: all changes)"
|
|
10663
|
+
"modules": {
|
|
10664
|
+
"type": "EndpointModule[]",
|
|
10665
|
+
"description": "Parameter modules"
|
|
10373
10666
|
}
|
|
10374
10667
|
},
|
|
10375
10668
|
"required": [
|
|
10376
|
-
"
|
|
10377
|
-
"table",
|
|
10378
|
-
"callback"
|
|
10669
|
+
"modules"
|
|
10379
10670
|
],
|
|
10380
|
-
"returns": "
|
|
10671
|
+
"returns": "Promise<this>"
|
|
10381
10672
|
},
|
|
10382
|
-
"
|
|
10383
|
-
"description": "
|
|
10673
|
+
"serveOpenAPISpec": {
|
|
10674
|
+
"description": "",
|
|
10384
10675
|
"parameters": {
|
|
10385
|
-
"
|
|
10386
|
-
"type": "string",
|
|
10387
|
-
"description": "
|
|
10676
|
+
"options": {
|
|
10677
|
+
"type": "{ title?: string; version?: string; description?: string }",
|
|
10678
|
+
"description": "Parameter options"
|
|
10388
10679
|
}
|
|
10389
10680
|
},
|
|
10390
|
-
"required": [
|
|
10391
|
-
"channelName"
|
|
10392
|
-
],
|
|
10393
|
-
"returns": "void"
|
|
10394
|
-
},
|
|
10395
|
-
"unsubscribeAll": {
|
|
10396
|
-
"description": "Unsubscribe and remove all realtime channels.",
|
|
10397
|
-
"parameters": {},
|
|
10398
|
-
"required": [],
|
|
10399
|
-
"returns": "void"
|
|
10400
|
-
},
|
|
10401
|
-
"connect": {
|
|
10402
|
-
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
10403
|
-
"parameters": {},
|
|
10404
10681
|
"required": [],
|
|
10405
|
-
"returns": "
|
|
10682
|
+
"returns": "this"
|
|
10406
10683
|
},
|
|
10407
|
-
"
|
|
10408
|
-
"description": "
|
|
10409
|
-
"parameters": {
|
|
10684
|
+
"generateOpenAPISpec": {
|
|
10685
|
+
"description": "",
|
|
10686
|
+
"parameters": {
|
|
10687
|
+
"options": {
|
|
10688
|
+
"type": "{ title?: string; version?: string; description?: string }",
|
|
10689
|
+
"description": "Parameter options"
|
|
10690
|
+
}
|
|
10691
|
+
},
|
|
10410
10692
|
"required": [],
|
|
10411
|
-
"returns": "
|
|
10693
|
+
"returns": "Record<string, any>"
|
|
10412
10694
|
}
|
|
10413
10695
|
},
|
|
10414
10696
|
"getters": {
|
|
10415
|
-
"
|
|
10416
|
-
"description": "
|
|
10417
|
-
"returns": "
|
|
10697
|
+
"express": {
|
|
10698
|
+
"description": "",
|
|
10699
|
+
"returns": "any"
|
|
10418
10700
|
},
|
|
10419
|
-
"
|
|
10420
|
-
"description": "
|
|
10701
|
+
"hooks": {
|
|
10702
|
+
"description": "",
|
|
10421
10703
|
"returns": "any"
|
|
10422
10704
|
},
|
|
10423
|
-
"
|
|
10424
|
-
"description": "
|
|
10705
|
+
"app": {
|
|
10706
|
+
"description": "",
|
|
10425
10707
|
"returns": "any"
|
|
10426
10708
|
}
|
|
10427
10709
|
},
|
|
@@ -10432,343 +10714,61 @@ setBuildTimeData('clients.supabase', {
|
|
|
10432
10714
|
"examples": [
|
|
10433
10715
|
{
|
|
10434
10716
|
"language": "ts",
|
|
10435
|
-
"code": "const
|
|
10717
|
+
"code": "const server = container.server('express', { cors: true, static: './public' })\nawait server.start({ port: 3000 })\n\n// Mount endpoints programmatically\nserver.mount(myEndpoint)\n\n// Access the underlying Express app\nserver.app.get('/health', (req, res) => res.json({ ok: true }))"
|
|
10436
10718
|
}
|
|
10437
10719
|
]
|
|
10438
10720
|
});
|
|
10439
10721
|
|
|
10440
|
-
setBuildTimeData('servers.
|
|
10441
|
-
"id": "servers.
|
|
10442
|
-
"description": "
|
|
10443
|
-
"shortcut": "servers.
|
|
10444
|
-
"className": "
|
|
10722
|
+
setBuildTimeData('servers.websocket', {
|
|
10723
|
+
"id": "servers.websocket",
|
|
10724
|
+
"description": "WebSocket server built on the `ws` library with optional JSON message framing. Manages WebSocket connections, tracks connected clients, and bridges messages to Luca's event bus. When `json` mode is enabled, incoming messages are automatically JSON-parsed (with `.toString()` for Buffer data) and outgoing messages via `send()` / `broadcast()` are JSON-stringified. When `json` mode is disabled, raw message data is emitted as-is and `send()` / `broadcast()` still JSON-stringify for safety.",
|
|
10725
|
+
"shortcut": "servers.websocket",
|
|
10726
|
+
"className": "WebsocketServer",
|
|
10445
10727
|
"methods": {
|
|
10446
|
-
"
|
|
10447
|
-
"description": "
|
|
10728
|
+
"broadcast": {
|
|
10729
|
+
"description": "",
|
|
10448
10730
|
"parameters": {
|
|
10449
|
-
"
|
|
10450
|
-
"type": "
|
|
10451
|
-
"description": "
|
|
10452
|
-
},
|
|
10453
|
-
"options": {
|
|
10454
|
-
"type": "ToolRegistrationOptions",
|
|
10455
|
-
"description": "Tool schema, description, and handler",
|
|
10456
|
-
"properties": {
|
|
10457
|
-
"schema": {
|
|
10458
|
-
"type": "z.ZodObject<any>",
|
|
10459
|
-
"description": ""
|
|
10460
|
-
},
|
|
10461
|
-
"description": {
|
|
10462
|
-
"type": "string",
|
|
10463
|
-
"description": ""
|
|
10464
|
-
},
|
|
10465
|
-
"handler": {
|
|
10466
|
-
"type": "(args: any, ctx: MCPContext) => any",
|
|
10467
|
-
"description": ""
|
|
10468
|
-
}
|
|
10469
|
-
}
|
|
10731
|
+
"message": {
|
|
10732
|
+
"type": "any",
|
|
10733
|
+
"description": "Parameter message"
|
|
10470
10734
|
}
|
|
10471
10735
|
},
|
|
10472
10736
|
"required": [
|
|
10473
|
-
"
|
|
10474
|
-
"options"
|
|
10737
|
+
"message"
|
|
10475
10738
|
],
|
|
10476
|
-
"returns": "
|
|
10739
|
+
"returns": "void"
|
|
10477
10740
|
},
|
|
10478
|
-
"
|
|
10479
|
-
"description": "
|
|
10741
|
+
"send": {
|
|
10742
|
+
"description": "",
|
|
10480
10743
|
"parameters": {
|
|
10481
|
-
"
|
|
10482
|
-
"type": "
|
|
10483
|
-
"description": "
|
|
10744
|
+
"ws": {
|
|
10745
|
+
"type": "any",
|
|
10746
|
+
"description": "Parameter ws"
|
|
10484
10747
|
},
|
|
10485
|
-
"
|
|
10486
|
-
"type": "
|
|
10487
|
-
"description": "
|
|
10748
|
+
"message": {
|
|
10749
|
+
"type": "any",
|
|
10750
|
+
"description": "Parameter message"
|
|
10488
10751
|
}
|
|
10489
10752
|
},
|
|
10490
10753
|
"required": [
|
|
10491
|
-
"
|
|
10492
|
-
"
|
|
10754
|
+
"ws",
|
|
10755
|
+
"message"
|
|
10493
10756
|
],
|
|
10494
|
-
"returns": "
|
|
10757
|
+
"returns": "void"
|
|
10495
10758
|
},
|
|
10496
|
-
"
|
|
10497
|
-
"description": "
|
|
10759
|
+
"start": {
|
|
10760
|
+
"description": "Start the WebSocket server. A runtime `port` overrides the constructor option and is written to state before the underlying `ws.Server` is created, so the server binds to the correct port.",
|
|
10498
10761
|
"parameters": {
|
|
10499
|
-
"name": {
|
|
10500
|
-
"type": "string",
|
|
10501
|
-
"description": "Unique prompt name"
|
|
10502
|
-
},
|
|
10503
10762
|
"options": {
|
|
10504
|
-
"type": "
|
|
10505
|
-
"description": "
|
|
10506
|
-
"properties": {
|
|
10507
|
-
"description": {
|
|
10508
|
-
"type": "string",
|
|
10509
|
-
"description": ""
|
|
10510
|
-
},
|
|
10511
|
-
"args": {
|
|
10512
|
-
"type": "Record<string, z.ZodType>",
|
|
10513
|
-
"description": ""
|
|
10514
|
-
},
|
|
10515
|
-
"handler": {
|
|
10516
|
-
"type": "(args: Record<string, string | undefined>, ctx: MCPContext) => Promise<PromptMessage[]> | PromptMessage[]",
|
|
10517
|
-
"description": ""
|
|
10518
|
-
}
|
|
10519
|
-
}
|
|
10763
|
+
"type": "StartOptions",
|
|
10764
|
+
"description": "Optional runtime overrides for port and host"
|
|
10520
10765
|
}
|
|
10521
10766
|
},
|
|
10522
|
-
"required": [
|
|
10523
|
-
|
|
10524
|
-
"options"
|
|
10525
|
-
],
|
|
10526
|
-
"returns": "this"
|
|
10767
|
+
"required": [],
|
|
10768
|
+
"returns": "void"
|
|
10527
10769
|
},
|
|
10528
|
-
"
|
|
10529
|
-
"description": "
|
|
10530
|
-
"parameters": {},
|
|
10531
|
-
"required": [],
|
|
10532
|
-
"returns": "void"
|
|
10533
|
-
},
|
|
10534
|
-
"start": {
|
|
10535
|
-
"description": "Start the MCP server with the specified transport.",
|
|
10536
|
-
"parameters": {
|
|
10537
|
-
"options": {
|
|
10538
|
-
"type": "{\n transport?: 'stdio' | 'http'\n port?: number\n host?: string\n mcpCompat?: MCPCompatMode\n stdioCompat?: StdioCompatMode\n }",
|
|
10539
|
-
"description": "Transport configuration. Defaults to stdio.",
|
|
10540
|
-
"properties": {
|
|
10541
|
-
"transport": {
|
|
10542
|
-
"type": "any",
|
|
10543
|
-
"description": "'stdio' for CLI integration, 'http' for remote access"
|
|
10544
|
-
},
|
|
10545
|
-
"port": {
|
|
10546
|
-
"type": "any",
|
|
10547
|
-
"description": "Port for HTTP transport (default 3001)"
|
|
10548
|
-
}
|
|
10549
|
-
}
|
|
10550
|
-
}
|
|
10551
|
-
},
|
|
10552
|
-
"required": [],
|
|
10553
|
-
"returns": "void"
|
|
10554
|
-
},
|
|
10555
|
-
"stop": {
|
|
10556
|
-
"description": "Stop the MCP server and close all connections.",
|
|
10557
|
-
"parameters": {},
|
|
10558
|
-
"required": [],
|
|
10559
|
-
"returns": "void"
|
|
10560
|
-
}
|
|
10561
|
-
},
|
|
10562
|
-
"getters": {
|
|
10563
|
-
"mcpServer": {
|
|
10564
|
-
"description": "The underlying MCP protocol server instance. Created during configure().",
|
|
10565
|
-
"returns": "MCPProtocolServer"
|
|
10566
|
-
},
|
|
10567
|
-
"handlerContext": {
|
|
10568
|
-
"description": "The handler context passed to all tool, resource, and prompt handlers.",
|
|
10569
|
-
"returns": "MCPContext"
|
|
10570
|
-
}
|
|
10571
|
-
},
|
|
10572
|
-
"events": {
|
|
10573
|
-
"toolRegistered": {
|
|
10574
|
-
"name": "toolRegistered",
|
|
10575
|
-
"description": "Event emitted by MCPServer",
|
|
10576
|
-
"arguments": {}
|
|
10577
|
-
},
|
|
10578
|
-
"resourceRegistered": {
|
|
10579
|
-
"name": "resourceRegistered",
|
|
10580
|
-
"description": "Event emitted by MCPServer",
|
|
10581
|
-
"arguments": {}
|
|
10582
|
-
},
|
|
10583
|
-
"promptRegistered": {
|
|
10584
|
-
"name": "promptRegistered",
|
|
10585
|
-
"description": "Event emitted by MCPServer",
|
|
10586
|
-
"arguments": {}
|
|
10587
|
-
},
|
|
10588
|
-
"toolCalled": {
|
|
10589
|
-
"name": "toolCalled",
|
|
10590
|
-
"description": "Event emitted by MCPServer",
|
|
10591
|
-
"arguments": {}
|
|
10592
|
-
}
|
|
10593
|
-
},
|
|
10594
|
-
"state": {},
|
|
10595
|
-
"options": {},
|
|
10596
|
-
"envVars": [],
|
|
10597
|
-
"examples": [
|
|
10598
|
-
{
|
|
10599
|
-
"language": "ts",
|
|
10600
|
-
"code": "const mcp = container.server('mcp', { serverName: 'my-server', serverVersion: '1.0.0' })\n\nmcp.tool('search_files', {\n schema: z.object({ pattern: z.string() }),\n description: 'Search for files',\n handler: async (args, ctx) => {\n return ctx.container.feature('fs').walk('.', { include: [args.pattern] }).files.join('\\n')\n }\n})\n\nawait mcp.start()"
|
|
10601
|
-
}
|
|
10602
|
-
]
|
|
10603
|
-
});
|
|
10604
|
-
|
|
10605
|
-
setBuildTimeData('servers.express', {
|
|
10606
|
-
"id": "servers.express",
|
|
10607
|
-
"description": "Express.js HTTP server with automatic endpoint mounting, CORS, and SPA history fallback. Wraps an Express application with convention-based endpoint discovery. Endpoints defined as modules are automatically mounted as routes. Supports static file serving, CORS configuration, and single-page app history fallback out of the box.",
|
|
10608
|
-
"shortcut": "servers.express",
|
|
10609
|
-
"className": "ExpressServer",
|
|
10610
|
-
"methods": {
|
|
10611
|
-
"start": {
|
|
10612
|
-
"description": "Start the Express HTTP server. A runtime `port` overrides the constructor option and is written to state so `server.port` always reflects reality.",
|
|
10613
|
-
"parameters": {
|
|
10614
|
-
"options": {
|
|
10615
|
-
"type": "StartOptions",
|
|
10616
|
-
"description": "Optional runtime overrides for port and host"
|
|
10617
|
-
}
|
|
10618
|
-
},
|
|
10619
|
-
"required": [],
|
|
10620
|
-
"returns": "void"
|
|
10621
|
-
},
|
|
10622
|
-
"stop": {
|
|
10623
|
-
"description": "",
|
|
10624
|
-
"parameters": {},
|
|
10625
|
-
"required": [],
|
|
10626
|
-
"returns": "void"
|
|
10627
|
-
},
|
|
10628
|
-
"configure": {
|
|
10629
|
-
"description": "",
|
|
10630
|
-
"parameters": {},
|
|
10631
|
-
"required": [],
|
|
10632
|
-
"returns": "void"
|
|
10633
|
-
},
|
|
10634
|
-
"useEndpoint": {
|
|
10635
|
-
"description": "",
|
|
10636
|
-
"parameters": {
|
|
10637
|
-
"endpoint": {
|
|
10638
|
-
"type": "Endpoint",
|
|
10639
|
-
"description": "Parameter endpoint"
|
|
10640
|
-
}
|
|
10641
|
-
},
|
|
10642
|
-
"required": [
|
|
10643
|
-
"endpoint"
|
|
10644
|
-
],
|
|
10645
|
-
"returns": "this"
|
|
10646
|
-
},
|
|
10647
|
-
"useEndpoints": {
|
|
10648
|
-
"description": "",
|
|
10649
|
-
"parameters": {
|
|
10650
|
-
"dir": {
|
|
10651
|
-
"type": "string",
|
|
10652
|
-
"description": "Parameter dir"
|
|
10653
|
-
}
|
|
10654
|
-
},
|
|
10655
|
-
"required": [
|
|
10656
|
-
"dir"
|
|
10657
|
-
],
|
|
10658
|
-
"returns": "Promise<this>"
|
|
10659
|
-
},
|
|
10660
|
-
"useEndpointModules": {
|
|
10661
|
-
"description": "",
|
|
10662
|
-
"parameters": {
|
|
10663
|
-
"modules": {
|
|
10664
|
-
"type": "EndpointModule[]",
|
|
10665
|
-
"description": "Parameter modules"
|
|
10666
|
-
}
|
|
10667
|
-
},
|
|
10668
|
-
"required": [
|
|
10669
|
-
"modules"
|
|
10670
|
-
],
|
|
10671
|
-
"returns": "Promise<this>"
|
|
10672
|
-
},
|
|
10673
|
-
"serveOpenAPISpec": {
|
|
10674
|
-
"description": "",
|
|
10675
|
-
"parameters": {
|
|
10676
|
-
"options": {
|
|
10677
|
-
"type": "{ title?: string; version?: string; description?: string }",
|
|
10678
|
-
"description": "Parameter options"
|
|
10679
|
-
}
|
|
10680
|
-
},
|
|
10681
|
-
"required": [],
|
|
10682
|
-
"returns": "this"
|
|
10683
|
-
},
|
|
10684
|
-
"generateOpenAPISpec": {
|
|
10685
|
-
"description": "",
|
|
10686
|
-
"parameters": {
|
|
10687
|
-
"options": {
|
|
10688
|
-
"type": "{ title?: string; version?: string; description?: string }",
|
|
10689
|
-
"description": "Parameter options"
|
|
10690
|
-
}
|
|
10691
|
-
},
|
|
10692
|
-
"required": [],
|
|
10693
|
-
"returns": "Record<string, any>"
|
|
10694
|
-
}
|
|
10695
|
-
},
|
|
10696
|
-
"getters": {
|
|
10697
|
-
"express": {
|
|
10698
|
-
"description": "",
|
|
10699
|
-
"returns": "any"
|
|
10700
|
-
},
|
|
10701
|
-
"hooks": {
|
|
10702
|
-
"description": "",
|
|
10703
|
-
"returns": "any"
|
|
10704
|
-
},
|
|
10705
|
-
"app": {
|
|
10706
|
-
"description": "",
|
|
10707
|
-
"returns": "any"
|
|
10708
|
-
}
|
|
10709
|
-
},
|
|
10710
|
-
"events": {},
|
|
10711
|
-
"state": {},
|
|
10712
|
-
"options": {},
|
|
10713
|
-
"envVars": [],
|
|
10714
|
-
"examples": [
|
|
10715
|
-
{
|
|
10716
|
-
"language": "ts",
|
|
10717
|
-
"code": "const server = container.server('express', { cors: true, static: './public' })\nawait server.start({ port: 3000 })\n\n// Mount endpoints programmatically\nserver.mount(myEndpoint)\n\n// Access the underlying Express app\nserver.app.get('/health', (req, res) => res.json({ ok: true }))"
|
|
10718
|
-
}
|
|
10719
|
-
]
|
|
10720
|
-
});
|
|
10721
|
-
|
|
10722
|
-
setBuildTimeData('servers.websocket', {
|
|
10723
|
-
"id": "servers.websocket",
|
|
10724
|
-
"description": "WebSocket server built on the `ws` library with optional JSON message framing. Manages WebSocket connections, tracks connected clients, and bridges messages to Luca's event bus. When `json` mode is enabled, incoming messages are automatically JSON-parsed (with `.toString()` for Buffer data) and outgoing messages via `send()` / `broadcast()` are JSON-stringified. When `json` mode is disabled, raw message data is emitted as-is and `send()` / `broadcast()` still JSON-stringify for safety.",
|
|
10725
|
-
"shortcut": "servers.websocket",
|
|
10726
|
-
"className": "WebsocketServer",
|
|
10727
|
-
"methods": {
|
|
10728
|
-
"broadcast": {
|
|
10729
|
-
"description": "",
|
|
10730
|
-
"parameters": {
|
|
10731
|
-
"message": {
|
|
10732
|
-
"type": "any",
|
|
10733
|
-
"description": "Parameter message"
|
|
10734
|
-
}
|
|
10735
|
-
},
|
|
10736
|
-
"required": [
|
|
10737
|
-
"message"
|
|
10738
|
-
],
|
|
10739
|
-
"returns": "void"
|
|
10740
|
-
},
|
|
10741
|
-
"send": {
|
|
10742
|
-
"description": "",
|
|
10743
|
-
"parameters": {
|
|
10744
|
-
"ws": {
|
|
10745
|
-
"type": "any",
|
|
10746
|
-
"description": "Parameter ws"
|
|
10747
|
-
},
|
|
10748
|
-
"message": {
|
|
10749
|
-
"type": "any",
|
|
10750
|
-
"description": "Parameter message"
|
|
10751
|
-
}
|
|
10752
|
-
},
|
|
10753
|
-
"required": [
|
|
10754
|
-
"ws",
|
|
10755
|
-
"message"
|
|
10756
|
-
],
|
|
10757
|
-
"returns": "void"
|
|
10758
|
-
},
|
|
10759
|
-
"start": {
|
|
10760
|
-
"description": "Start the WebSocket server. A runtime `port` overrides the constructor option and is written to state before the underlying `ws.Server` is created, so the server binds to the correct port.",
|
|
10761
|
-
"parameters": {
|
|
10762
|
-
"options": {
|
|
10763
|
-
"type": "StartOptions",
|
|
10764
|
-
"description": "Optional runtime overrides for port and host"
|
|
10765
|
-
}
|
|
10766
|
-
},
|
|
10767
|
-
"required": [],
|
|
10768
|
-
"returns": "void"
|
|
10769
|
-
},
|
|
10770
|
-
"stop": {
|
|
10771
|
-
"description": "",
|
|
10770
|
+
"stop": {
|
|
10771
|
+
"description": "",
|
|
10772
10772
|
"parameters": {},
|
|
10773
10773
|
"required": [],
|
|
10774
10774
|
"returns": "void"
|
|
@@ -20711,19 +20711,214 @@ export const introspectionData = [
|
|
|
20711
20711
|
]
|
|
20712
20712
|
},
|
|
20713
20713
|
{
|
|
20714
|
-
"id": "clients.
|
|
20715
|
-
"description": "
|
|
20716
|
-
"shortcut": "clients.
|
|
20717
|
-
"className": "
|
|
20714
|
+
"id": "clients.supabase",
|
|
20715
|
+
"description": "Supabase client for the Luca container system. Wraps the official `@supabase/supabase-js` SDK and exposes it through Luca's typed state, events, and introspection system. The SDK is isomorphic so this single implementation works in both Node and browser containers. Use `client.sdk` for full SDK access, or use the convenience wrappers for common operations (auth, database queries, storage, edge functions, realtime).",
|
|
20716
|
+
"shortcut": "clients.supabase",
|
|
20717
|
+
"className": "SupabaseClient",
|
|
20718
20718
|
"methods": {
|
|
20719
|
-
"
|
|
20720
|
-
"description": "
|
|
20721
|
-
"parameters": {
|
|
20722
|
-
|
|
20723
|
-
|
|
20724
|
-
|
|
20725
|
-
|
|
20726
|
-
|
|
20719
|
+
"from": {
|
|
20720
|
+
"description": "Start a query on a Postgres table or view.",
|
|
20721
|
+
"parameters": {
|
|
20722
|
+
"table": {
|
|
20723
|
+
"type": "string",
|
|
20724
|
+
"description": "The table or view name to query"
|
|
20725
|
+
}
|
|
20726
|
+
},
|
|
20727
|
+
"required": [
|
|
20728
|
+
"table"
|
|
20729
|
+
],
|
|
20730
|
+
"returns": "void"
|
|
20731
|
+
},
|
|
20732
|
+
"rpc": {
|
|
20733
|
+
"description": "Call a Postgres function (RPC).",
|
|
20734
|
+
"parameters": {
|
|
20735
|
+
"fn": {
|
|
20736
|
+
"type": "string",
|
|
20737
|
+
"description": "The function name"
|
|
20738
|
+
},
|
|
20739
|
+
"params": {
|
|
20740
|
+
"type": "Record<string, unknown>",
|
|
20741
|
+
"description": "Arguments to pass to the function"
|
|
20742
|
+
},
|
|
20743
|
+
"options": {
|
|
20744
|
+
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
20745
|
+
"description": "Optional settings (head, get, count)"
|
|
20746
|
+
}
|
|
20747
|
+
},
|
|
20748
|
+
"required": [
|
|
20749
|
+
"fn"
|
|
20750
|
+
],
|
|
20751
|
+
"returns": "void"
|
|
20752
|
+
},
|
|
20753
|
+
"signInWithPassword": {
|
|
20754
|
+
"description": "Sign in with email and password.",
|
|
20755
|
+
"parameters": {
|
|
20756
|
+
"email": {
|
|
20757
|
+
"type": "string",
|
|
20758
|
+
"description": "Parameter email"
|
|
20759
|
+
},
|
|
20760
|
+
"password": {
|
|
20761
|
+
"type": "string",
|
|
20762
|
+
"description": "Parameter password"
|
|
20763
|
+
}
|
|
20764
|
+
},
|
|
20765
|
+
"required": [
|
|
20766
|
+
"email",
|
|
20767
|
+
"password"
|
|
20768
|
+
],
|
|
20769
|
+
"returns": "void"
|
|
20770
|
+
},
|
|
20771
|
+
"signUp": {
|
|
20772
|
+
"description": "Create a new user account with email and password.",
|
|
20773
|
+
"parameters": {
|
|
20774
|
+
"email": {
|
|
20775
|
+
"type": "string",
|
|
20776
|
+
"description": "Parameter email"
|
|
20777
|
+
},
|
|
20778
|
+
"password": {
|
|
20779
|
+
"type": "string",
|
|
20780
|
+
"description": "Parameter password"
|
|
20781
|
+
}
|
|
20782
|
+
},
|
|
20783
|
+
"required": [
|
|
20784
|
+
"email",
|
|
20785
|
+
"password"
|
|
20786
|
+
],
|
|
20787
|
+
"returns": "void"
|
|
20788
|
+
},
|
|
20789
|
+
"signOut": {
|
|
20790
|
+
"description": "Sign the current user out.",
|
|
20791
|
+
"parameters": {},
|
|
20792
|
+
"required": [],
|
|
20793
|
+
"returns": "void"
|
|
20794
|
+
},
|
|
20795
|
+
"getSession": {
|
|
20796
|
+
"description": "Get the current session, if any.",
|
|
20797
|
+
"parameters": {},
|
|
20798
|
+
"required": [],
|
|
20799
|
+
"returns": "void"
|
|
20800
|
+
},
|
|
20801
|
+
"getUser": {
|
|
20802
|
+
"description": "Get the current user, if any.",
|
|
20803
|
+
"parameters": {},
|
|
20804
|
+
"required": [],
|
|
20805
|
+
"returns": "void"
|
|
20806
|
+
},
|
|
20807
|
+
"invoke": {
|
|
20808
|
+
"description": "Invoke a Supabase Edge Function by name.",
|
|
20809
|
+
"parameters": {
|
|
20810
|
+
"name": {
|
|
20811
|
+
"type": "string",
|
|
20812
|
+
"description": "Parameter name"
|
|
20813
|
+
},
|
|
20814
|
+
"body": {
|
|
20815
|
+
"type": "any",
|
|
20816
|
+
"description": "Parameter body"
|
|
20817
|
+
}
|
|
20818
|
+
},
|
|
20819
|
+
"required": [
|
|
20820
|
+
"name"
|
|
20821
|
+
],
|
|
20822
|
+
"returns": "void"
|
|
20823
|
+
},
|
|
20824
|
+
"subscribe": {
|
|
20825
|
+
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
20826
|
+
"parameters": {
|
|
20827
|
+
"channelName": {
|
|
20828
|
+
"type": "string",
|
|
20829
|
+
"description": "A name for this subscription channel"
|
|
20830
|
+
},
|
|
20831
|
+
"table": {
|
|
20832
|
+
"type": "string",
|
|
20833
|
+
"description": "The table to listen to"
|
|
20834
|
+
},
|
|
20835
|
+
"callback": {
|
|
20836
|
+
"type": "(payload: any) => void",
|
|
20837
|
+
"description": "Called with the payload on each change"
|
|
20838
|
+
},
|
|
20839
|
+
"event": {
|
|
20840
|
+
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
20841
|
+
"description": "The event type to listen for (default: all changes)"
|
|
20842
|
+
}
|
|
20843
|
+
},
|
|
20844
|
+
"required": [
|
|
20845
|
+
"channelName",
|
|
20846
|
+
"table",
|
|
20847
|
+
"callback"
|
|
20848
|
+
],
|
|
20849
|
+
"returns": "RealtimeChannel"
|
|
20850
|
+
},
|
|
20851
|
+
"unsubscribe": {
|
|
20852
|
+
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
20853
|
+
"parameters": {
|
|
20854
|
+
"channelName": {
|
|
20855
|
+
"type": "string",
|
|
20856
|
+
"description": "The channel name to remove"
|
|
20857
|
+
}
|
|
20858
|
+
},
|
|
20859
|
+
"required": [
|
|
20860
|
+
"channelName"
|
|
20861
|
+
],
|
|
20862
|
+
"returns": "void"
|
|
20863
|
+
},
|
|
20864
|
+
"unsubscribeAll": {
|
|
20865
|
+
"description": "Unsubscribe and remove all realtime channels.",
|
|
20866
|
+
"parameters": {},
|
|
20867
|
+
"required": [],
|
|
20868
|
+
"returns": "void"
|
|
20869
|
+
},
|
|
20870
|
+
"connect": {
|
|
20871
|
+
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
20872
|
+
"parameters": {},
|
|
20873
|
+
"required": [],
|
|
20874
|
+
"returns": "void"
|
|
20875
|
+
},
|
|
20876
|
+
"disconnect": {
|
|
20877
|
+
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
20878
|
+
"parameters": {},
|
|
20879
|
+
"required": [],
|
|
20880
|
+
"returns": "void"
|
|
20881
|
+
}
|
|
20882
|
+
},
|
|
20883
|
+
"getters": {
|
|
20884
|
+
"sdk": {
|
|
20885
|
+
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
20886
|
+
"returns": "SupabaseSDKClient<any, any>"
|
|
20887
|
+
},
|
|
20888
|
+
"storage": {
|
|
20889
|
+
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
20890
|
+
"returns": "any"
|
|
20891
|
+
},
|
|
20892
|
+
"functions": {
|
|
20893
|
+
"description": "Returns the Supabase Functions client.",
|
|
20894
|
+
"returns": "any"
|
|
20895
|
+
}
|
|
20896
|
+
},
|
|
20897
|
+
"events": {},
|
|
20898
|
+
"state": {},
|
|
20899
|
+
"options": {},
|
|
20900
|
+
"envVars": [],
|
|
20901
|
+
"examples": [
|
|
20902
|
+
{
|
|
20903
|
+
"language": "ts",
|
|
20904
|
+
"code": "const supabase = container.client('supabase', {\n supabaseUrl: 'https://xyz.supabase.co',\n supabaseKey: 'your-anon-key',\n})\n\n// Query data\nconst { data } = await supabase.from('users').select('*')\n\n// Auth\nawait supabase.signInWithPassword('user@example.com', 'password')\n\n// Realtime\nsupabase.subscribe('changes', 'users', (payload) => {\n console.log('Change:', payload)\n})"
|
|
20905
|
+
}
|
|
20906
|
+
]
|
|
20907
|
+
},
|
|
20908
|
+
{
|
|
20909
|
+
"id": "clients.openai",
|
|
20910
|
+
"description": "OpenAI client — wraps the OpenAI SDK for chat completions, responses API, embeddings, and image generation. Provides convenience methods for common operations while tracking token usage and request counts. Supports both the Chat Completions API and the newer Responses API.",
|
|
20911
|
+
"shortcut": "clients.openai",
|
|
20912
|
+
"className": "OpenAIClient",
|
|
20913
|
+
"methods": {
|
|
20914
|
+
"connect": {
|
|
20915
|
+
"description": "Test the API connection by listing models.",
|
|
20916
|
+
"parameters": {},
|
|
20917
|
+
"required": [],
|
|
20918
|
+
"returns": "Promise<this>",
|
|
20919
|
+
"examples": [
|
|
20920
|
+
{
|
|
20921
|
+
"language": "ts",
|
|
20727
20922
|
"code": "await openai.connect()"
|
|
20728
20923
|
}
|
|
20729
20924
|
]
|
|
@@ -20978,46 +21173,247 @@ export const introspectionData = [
|
|
|
20978
21173
|
]
|
|
20979
21174
|
},
|
|
20980
21175
|
{
|
|
20981
|
-
"id": "clients.
|
|
20982
|
-
"description": "
|
|
20983
|
-
"shortcut": "clients.
|
|
20984
|
-
"className": "
|
|
21176
|
+
"id": "clients.elevenlabs",
|
|
21177
|
+
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
21178
|
+
"shortcut": "clients.elevenlabs",
|
|
21179
|
+
"className": "ElevenLabsClient",
|
|
20985
21180
|
"methods": {
|
|
20986
|
-
"
|
|
20987
|
-
"description": "
|
|
20988
|
-
"parameters": {
|
|
20989
|
-
|
|
20990
|
-
|
|
20991
|
-
|
|
20992
|
-
|
|
20993
|
-
|
|
20994
|
-
|
|
20995
|
-
|
|
20996
|
-
|
|
20997
|
-
},
|
|
20998
|
-
"required": [
|
|
20999
|
-
"prompt"
|
|
21000
|
-
],
|
|
21001
|
-
"returns": "Promise<{ prompt_id: string; number: number }>",
|
|
21181
|
+
"beforeRequest": {
|
|
21182
|
+
"description": "Inject the xi-api-key header before each request.",
|
|
21183
|
+
"parameters": {},
|
|
21184
|
+
"required": [],
|
|
21185
|
+
"returns": "void"
|
|
21186
|
+
},
|
|
21187
|
+
"connect": {
|
|
21188
|
+
"description": "Validate the API key by listing available models.",
|
|
21189
|
+
"parameters": {},
|
|
21190
|
+
"required": [],
|
|
21191
|
+
"returns": "Promise<this>",
|
|
21002
21192
|
"examples": [
|
|
21003
21193
|
{
|
|
21004
21194
|
"language": "ts",
|
|
21005
|
-
"code": "
|
|
21195
|
+
"code": "await el.connect()"
|
|
21006
21196
|
}
|
|
21007
21197
|
]
|
|
21008
21198
|
},
|
|
21009
|
-
"
|
|
21010
|
-
"description": "
|
|
21011
|
-
"parameters": {},
|
|
21012
|
-
"required": [],
|
|
21013
|
-
"returns": "Promise<{ queue_running: any[]; queue_pending: any[] }>"
|
|
21014
|
-
},
|
|
21015
|
-
"getHistory": {
|
|
21016
|
-
"description": "Get execution history, optionally for a specific prompt.",
|
|
21199
|
+
"listVoices": {
|
|
21200
|
+
"description": "List available voices with optional search and filtering.",
|
|
21017
21201
|
"parameters": {
|
|
21018
|
-
"
|
|
21019
|
-
"type": "string",
|
|
21020
|
-
"description": "
|
|
21202
|
+
"options": {
|
|
21203
|
+
"type": "{\n search?: string\n category?: string\n voice_type?: string\n page_size?: number\n next_page_token?: string\n }",
|
|
21204
|
+
"description": "Query parameters for filtering voices"
|
|
21205
|
+
}
|
|
21206
|
+
},
|
|
21207
|
+
"required": [],
|
|
21208
|
+
"returns": "Promise<any>",
|
|
21209
|
+
"examples": [
|
|
21210
|
+
{
|
|
21211
|
+
"language": "ts",
|
|
21212
|
+
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
21213
|
+
}
|
|
21214
|
+
]
|
|
21215
|
+
},
|
|
21216
|
+
"getVoice": {
|
|
21217
|
+
"description": "Get details for a single voice.",
|
|
21218
|
+
"parameters": {
|
|
21219
|
+
"voiceId": {
|
|
21220
|
+
"type": "string",
|
|
21221
|
+
"description": "The voice ID to look up"
|
|
21222
|
+
}
|
|
21223
|
+
},
|
|
21224
|
+
"required": [
|
|
21225
|
+
"voiceId"
|
|
21226
|
+
],
|
|
21227
|
+
"returns": "Promise<any>",
|
|
21228
|
+
"examples": [
|
|
21229
|
+
{
|
|
21230
|
+
"language": "ts",
|
|
21231
|
+
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
21232
|
+
}
|
|
21233
|
+
]
|
|
21234
|
+
},
|
|
21235
|
+
"listModels": {
|
|
21236
|
+
"description": "List available TTS models.",
|
|
21237
|
+
"parameters": {},
|
|
21238
|
+
"required": [],
|
|
21239
|
+
"returns": "Promise<any[]>",
|
|
21240
|
+
"examples": [
|
|
21241
|
+
{
|
|
21242
|
+
"language": "ts",
|
|
21243
|
+
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
21244
|
+
}
|
|
21245
|
+
]
|
|
21246
|
+
},
|
|
21247
|
+
"synthesize": {
|
|
21248
|
+
"description": "Synthesize speech from text, returning audio as a Buffer.",
|
|
21249
|
+
"parameters": {
|
|
21250
|
+
"text": {
|
|
21251
|
+
"type": "string",
|
|
21252
|
+
"description": "The text to convert to speech"
|
|
21253
|
+
},
|
|
21254
|
+
"options": {
|
|
21255
|
+
"type": "SynthesizeOptions",
|
|
21256
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
21257
|
+
"properties": {
|
|
21258
|
+
"voiceId": {
|
|
21259
|
+
"type": "string",
|
|
21260
|
+
"description": ""
|
|
21261
|
+
},
|
|
21262
|
+
"modelId": {
|
|
21263
|
+
"type": "string",
|
|
21264
|
+
"description": ""
|
|
21265
|
+
},
|
|
21266
|
+
"outputFormat": {
|
|
21267
|
+
"type": "string",
|
|
21268
|
+
"description": ""
|
|
21269
|
+
},
|
|
21270
|
+
"voiceSettings": {
|
|
21271
|
+
"type": "ElevenLabsVoiceSettings",
|
|
21272
|
+
"description": ""
|
|
21273
|
+
},
|
|
21274
|
+
"disableCache": {
|
|
21275
|
+
"type": "boolean",
|
|
21276
|
+
"description": ""
|
|
21277
|
+
}
|
|
21278
|
+
}
|
|
21279
|
+
}
|
|
21280
|
+
},
|
|
21281
|
+
"required": [
|
|
21282
|
+
"text"
|
|
21283
|
+
],
|
|
21284
|
+
"returns": "Promise<Buffer>",
|
|
21285
|
+
"examples": [
|
|
21286
|
+
{
|
|
21287
|
+
"language": "ts",
|
|
21288
|
+
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
21289
|
+
}
|
|
21290
|
+
]
|
|
21291
|
+
},
|
|
21292
|
+
"say": {
|
|
21293
|
+
"description": "Synthesize speech and write the audio to a file.",
|
|
21294
|
+
"parameters": {
|
|
21295
|
+
"text": {
|
|
21296
|
+
"type": "string",
|
|
21297
|
+
"description": "The text to convert to speech"
|
|
21298
|
+
},
|
|
21299
|
+
"outputPath": {
|
|
21300
|
+
"type": "string",
|
|
21301
|
+
"description": "File path to write the audio to"
|
|
21302
|
+
},
|
|
21303
|
+
"options": {
|
|
21304
|
+
"type": "SynthesizeOptions",
|
|
21305
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
21306
|
+
"properties": {
|
|
21307
|
+
"voiceId": {
|
|
21308
|
+
"type": "string",
|
|
21309
|
+
"description": ""
|
|
21310
|
+
},
|
|
21311
|
+
"modelId": {
|
|
21312
|
+
"type": "string",
|
|
21313
|
+
"description": ""
|
|
21314
|
+
},
|
|
21315
|
+
"outputFormat": {
|
|
21316
|
+
"type": "string",
|
|
21317
|
+
"description": ""
|
|
21318
|
+
},
|
|
21319
|
+
"voiceSettings": {
|
|
21320
|
+
"type": "ElevenLabsVoiceSettings",
|
|
21321
|
+
"description": ""
|
|
21322
|
+
},
|
|
21323
|
+
"disableCache": {
|
|
21324
|
+
"type": "boolean",
|
|
21325
|
+
"description": ""
|
|
21326
|
+
}
|
|
21327
|
+
}
|
|
21328
|
+
}
|
|
21329
|
+
},
|
|
21330
|
+
"required": [
|
|
21331
|
+
"text",
|
|
21332
|
+
"outputPath"
|
|
21333
|
+
],
|
|
21334
|
+
"returns": "Promise<string>",
|
|
21335
|
+
"examples": [
|
|
21336
|
+
{
|
|
21337
|
+
"language": "ts",
|
|
21338
|
+
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
21339
|
+
}
|
|
21340
|
+
]
|
|
21341
|
+
}
|
|
21342
|
+
},
|
|
21343
|
+
"getters": {
|
|
21344
|
+
"apiKey": {
|
|
21345
|
+
"description": "The resolved API key from options or environment.",
|
|
21346
|
+
"returns": "string"
|
|
21347
|
+
}
|
|
21348
|
+
},
|
|
21349
|
+
"events": {
|
|
21350
|
+
"failure": {
|
|
21351
|
+
"name": "failure",
|
|
21352
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
21353
|
+
"arguments": {}
|
|
21354
|
+
},
|
|
21355
|
+
"voices": {
|
|
21356
|
+
"name": "voices",
|
|
21357
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
21358
|
+
"arguments": {}
|
|
21359
|
+
},
|
|
21360
|
+
"speech": {
|
|
21361
|
+
"name": "speech",
|
|
21362
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
21363
|
+
"arguments": {}
|
|
21364
|
+
}
|
|
21365
|
+
},
|
|
21366
|
+
"state": {},
|
|
21367
|
+
"options": {},
|
|
21368
|
+
"envVars": [],
|
|
21369
|
+
"examples": [
|
|
21370
|
+
{
|
|
21371
|
+
"language": "ts",
|
|
21372
|
+
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
21373
|
+
}
|
|
21374
|
+
]
|
|
21375
|
+
},
|
|
21376
|
+
{
|
|
21377
|
+
"id": "clients.comfyui",
|
|
21378
|
+
"description": "ComfyUI client — execute Stable Diffusion workflows via the ComfyUI API. Connects to a ComfyUI instance to queue prompts, track execution via WebSocket or polling, and download generated images. Supports both UI-format and API-format workflows with automatic conversion.",
|
|
21379
|
+
"shortcut": "clients.comfyui",
|
|
21380
|
+
"className": "ComfyUIClient",
|
|
21381
|
+
"methods": {
|
|
21382
|
+
"queuePrompt": {
|
|
21383
|
+
"description": "Queue a prompt (API-format workflow) for execution.",
|
|
21384
|
+
"parameters": {
|
|
21385
|
+
"prompt": {
|
|
21386
|
+
"type": "Record<string, any>",
|
|
21387
|
+
"description": "The API-format workflow object"
|
|
21388
|
+
},
|
|
21389
|
+
"clientId": {
|
|
21390
|
+
"type": "string",
|
|
21391
|
+
"description": "Override the client ID for this request"
|
|
21392
|
+
}
|
|
21393
|
+
},
|
|
21394
|
+
"required": [
|
|
21395
|
+
"prompt"
|
|
21396
|
+
],
|
|
21397
|
+
"returns": "Promise<{ prompt_id: string; number: number }>",
|
|
21398
|
+
"examples": [
|
|
21399
|
+
{
|
|
21400
|
+
"language": "ts",
|
|
21401
|
+
"code": "const { prompt_id } = await comfy.queuePrompt(apiWorkflow)"
|
|
21402
|
+
}
|
|
21403
|
+
]
|
|
21404
|
+
},
|
|
21405
|
+
"getQueue": {
|
|
21406
|
+
"description": "Get the current prompt queue status.",
|
|
21407
|
+
"parameters": {},
|
|
21408
|
+
"required": [],
|
|
21409
|
+
"returns": "Promise<{ queue_running: any[]; queue_pending: any[] }>"
|
|
21410
|
+
},
|
|
21411
|
+
"getHistory": {
|
|
21412
|
+
"description": "Get execution history, optionally for a specific prompt.",
|
|
21413
|
+
"parameters": {
|
|
21414
|
+
"promptId": {
|
|
21415
|
+
"type": "string",
|
|
21416
|
+
"description": "If provided, returns history for this prompt only"
|
|
21021
21417
|
}
|
|
21022
21418
|
},
|
|
21023
21419
|
"required": [],
|
|
@@ -21228,402 +21624,6 @@ export const introspectionData = [
|
|
|
21228
21624
|
}
|
|
21229
21625
|
]
|
|
21230
21626
|
},
|
|
21231
|
-
{
|
|
21232
|
-
"id": "clients.elevenlabs",
|
|
21233
|
-
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
21234
|
-
"shortcut": "clients.elevenlabs",
|
|
21235
|
-
"className": "ElevenLabsClient",
|
|
21236
|
-
"methods": {
|
|
21237
|
-
"beforeRequest": {
|
|
21238
|
-
"description": "Inject the xi-api-key header before each request.",
|
|
21239
|
-
"parameters": {},
|
|
21240
|
-
"required": [],
|
|
21241
|
-
"returns": "void"
|
|
21242
|
-
},
|
|
21243
|
-
"connect": {
|
|
21244
|
-
"description": "Validate the API key by listing available models.",
|
|
21245
|
-
"parameters": {},
|
|
21246
|
-
"required": [],
|
|
21247
|
-
"returns": "Promise<this>",
|
|
21248
|
-
"examples": [
|
|
21249
|
-
{
|
|
21250
|
-
"language": "ts",
|
|
21251
|
-
"code": "await el.connect()"
|
|
21252
|
-
}
|
|
21253
|
-
]
|
|
21254
|
-
},
|
|
21255
|
-
"listVoices": {
|
|
21256
|
-
"description": "List available voices with optional search and filtering.",
|
|
21257
|
-
"parameters": {
|
|
21258
|
-
"options": {
|
|
21259
|
-
"type": "{\n search?: string\n category?: string\n voice_type?: string\n page_size?: number\n next_page_token?: string\n }",
|
|
21260
|
-
"description": "Query parameters for filtering voices"
|
|
21261
|
-
}
|
|
21262
|
-
},
|
|
21263
|
-
"required": [],
|
|
21264
|
-
"returns": "Promise<any>",
|
|
21265
|
-
"examples": [
|
|
21266
|
-
{
|
|
21267
|
-
"language": "ts",
|
|
21268
|
-
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
21269
|
-
}
|
|
21270
|
-
]
|
|
21271
|
-
},
|
|
21272
|
-
"getVoice": {
|
|
21273
|
-
"description": "Get details for a single voice.",
|
|
21274
|
-
"parameters": {
|
|
21275
|
-
"voiceId": {
|
|
21276
|
-
"type": "string",
|
|
21277
|
-
"description": "The voice ID to look up"
|
|
21278
|
-
}
|
|
21279
|
-
},
|
|
21280
|
-
"required": [
|
|
21281
|
-
"voiceId"
|
|
21282
|
-
],
|
|
21283
|
-
"returns": "Promise<any>",
|
|
21284
|
-
"examples": [
|
|
21285
|
-
{
|
|
21286
|
-
"language": "ts",
|
|
21287
|
-
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
21288
|
-
}
|
|
21289
|
-
]
|
|
21290
|
-
},
|
|
21291
|
-
"listModels": {
|
|
21292
|
-
"description": "List available TTS models.",
|
|
21293
|
-
"parameters": {},
|
|
21294
|
-
"required": [],
|
|
21295
|
-
"returns": "Promise<any[]>",
|
|
21296
|
-
"examples": [
|
|
21297
|
-
{
|
|
21298
|
-
"language": "ts",
|
|
21299
|
-
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
21300
|
-
}
|
|
21301
|
-
]
|
|
21302
|
-
},
|
|
21303
|
-
"synthesize": {
|
|
21304
|
-
"description": "Synthesize speech from text, returning audio as a Buffer.",
|
|
21305
|
-
"parameters": {
|
|
21306
|
-
"text": {
|
|
21307
|
-
"type": "string",
|
|
21308
|
-
"description": "The text to convert to speech"
|
|
21309
|
-
},
|
|
21310
|
-
"options": {
|
|
21311
|
-
"type": "SynthesizeOptions",
|
|
21312
|
-
"description": "Voice, model, format, and voice settings overrides",
|
|
21313
|
-
"properties": {
|
|
21314
|
-
"voiceId": {
|
|
21315
|
-
"type": "string",
|
|
21316
|
-
"description": ""
|
|
21317
|
-
},
|
|
21318
|
-
"modelId": {
|
|
21319
|
-
"type": "string",
|
|
21320
|
-
"description": ""
|
|
21321
|
-
},
|
|
21322
|
-
"outputFormat": {
|
|
21323
|
-
"type": "string",
|
|
21324
|
-
"description": ""
|
|
21325
|
-
},
|
|
21326
|
-
"voiceSettings": {
|
|
21327
|
-
"type": "ElevenLabsVoiceSettings",
|
|
21328
|
-
"description": ""
|
|
21329
|
-
},
|
|
21330
|
-
"disableCache": {
|
|
21331
|
-
"type": "boolean",
|
|
21332
|
-
"description": ""
|
|
21333
|
-
}
|
|
21334
|
-
}
|
|
21335
|
-
}
|
|
21336
|
-
},
|
|
21337
|
-
"required": [
|
|
21338
|
-
"text"
|
|
21339
|
-
],
|
|
21340
|
-
"returns": "Promise<Buffer>",
|
|
21341
|
-
"examples": [
|
|
21342
|
-
{
|
|
21343
|
-
"language": "ts",
|
|
21344
|
-
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
21345
|
-
}
|
|
21346
|
-
]
|
|
21347
|
-
},
|
|
21348
|
-
"say": {
|
|
21349
|
-
"description": "Synthesize speech and write the audio to a file.",
|
|
21350
|
-
"parameters": {
|
|
21351
|
-
"text": {
|
|
21352
|
-
"type": "string",
|
|
21353
|
-
"description": "The text to convert to speech"
|
|
21354
|
-
},
|
|
21355
|
-
"outputPath": {
|
|
21356
|
-
"type": "string",
|
|
21357
|
-
"description": "File path to write the audio to"
|
|
21358
|
-
},
|
|
21359
|
-
"options": {
|
|
21360
|
-
"type": "SynthesizeOptions",
|
|
21361
|
-
"description": "Voice, model, format, and voice settings overrides",
|
|
21362
|
-
"properties": {
|
|
21363
|
-
"voiceId": {
|
|
21364
|
-
"type": "string",
|
|
21365
|
-
"description": ""
|
|
21366
|
-
},
|
|
21367
|
-
"modelId": {
|
|
21368
|
-
"type": "string",
|
|
21369
|
-
"description": ""
|
|
21370
|
-
},
|
|
21371
|
-
"outputFormat": {
|
|
21372
|
-
"type": "string",
|
|
21373
|
-
"description": ""
|
|
21374
|
-
},
|
|
21375
|
-
"voiceSettings": {
|
|
21376
|
-
"type": "ElevenLabsVoiceSettings",
|
|
21377
|
-
"description": ""
|
|
21378
|
-
},
|
|
21379
|
-
"disableCache": {
|
|
21380
|
-
"type": "boolean",
|
|
21381
|
-
"description": ""
|
|
21382
|
-
}
|
|
21383
|
-
}
|
|
21384
|
-
}
|
|
21385
|
-
},
|
|
21386
|
-
"required": [
|
|
21387
|
-
"text",
|
|
21388
|
-
"outputPath"
|
|
21389
|
-
],
|
|
21390
|
-
"returns": "Promise<string>",
|
|
21391
|
-
"examples": [
|
|
21392
|
-
{
|
|
21393
|
-
"language": "ts",
|
|
21394
|
-
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
21395
|
-
}
|
|
21396
|
-
]
|
|
21397
|
-
}
|
|
21398
|
-
},
|
|
21399
|
-
"getters": {
|
|
21400
|
-
"apiKey": {
|
|
21401
|
-
"description": "The resolved API key from options or environment.",
|
|
21402
|
-
"returns": "string"
|
|
21403
|
-
}
|
|
21404
|
-
},
|
|
21405
|
-
"events": {
|
|
21406
|
-
"failure": {
|
|
21407
|
-
"name": "failure",
|
|
21408
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
21409
|
-
"arguments": {}
|
|
21410
|
-
},
|
|
21411
|
-
"voices": {
|
|
21412
|
-
"name": "voices",
|
|
21413
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
21414
|
-
"arguments": {}
|
|
21415
|
-
},
|
|
21416
|
-
"speech": {
|
|
21417
|
-
"name": "speech",
|
|
21418
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
21419
|
-
"arguments": {}
|
|
21420
|
-
}
|
|
21421
|
-
},
|
|
21422
|
-
"state": {},
|
|
21423
|
-
"options": {},
|
|
21424
|
-
"envVars": [],
|
|
21425
|
-
"examples": [
|
|
21426
|
-
{
|
|
21427
|
-
"language": "ts",
|
|
21428
|
-
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
21429
|
-
}
|
|
21430
|
-
]
|
|
21431
|
-
},
|
|
21432
|
-
{
|
|
21433
|
-
"id": "clients.supabase",
|
|
21434
|
-
"description": "Supabase client for the Luca container system. Wraps the official `@supabase/supabase-js` SDK and exposes it through Luca's typed state, events, and introspection system. The SDK is isomorphic so this single implementation works in both Node and browser containers. Use `client.sdk` for full SDK access, or use the convenience wrappers for common operations (auth, database queries, storage, edge functions, realtime).",
|
|
21435
|
-
"shortcut": "clients.supabase",
|
|
21436
|
-
"className": "SupabaseClient",
|
|
21437
|
-
"methods": {
|
|
21438
|
-
"from": {
|
|
21439
|
-
"description": "Start a query on a Postgres table or view.",
|
|
21440
|
-
"parameters": {
|
|
21441
|
-
"table": {
|
|
21442
|
-
"type": "string",
|
|
21443
|
-
"description": "The table or view name to query"
|
|
21444
|
-
}
|
|
21445
|
-
},
|
|
21446
|
-
"required": [
|
|
21447
|
-
"table"
|
|
21448
|
-
],
|
|
21449
|
-
"returns": "void"
|
|
21450
|
-
},
|
|
21451
|
-
"rpc": {
|
|
21452
|
-
"description": "Call a Postgres function (RPC).",
|
|
21453
|
-
"parameters": {
|
|
21454
|
-
"fn": {
|
|
21455
|
-
"type": "string",
|
|
21456
|
-
"description": "The function name"
|
|
21457
|
-
},
|
|
21458
|
-
"params": {
|
|
21459
|
-
"type": "Record<string, unknown>",
|
|
21460
|
-
"description": "Arguments to pass to the function"
|
|
21461
|
-
},
|
|
21462
|
-
"options": {
|
|
21463
|
-
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
21464
|
-
"description": "Optional settings (head, get, count)"
|
|
21465
|
-
}
|
|
21466
|
-
},
|
|
21467
|
-
"required": [
|
|
21468
|
-
"fn"
|
|
21469
|
-
],
|
|
21470
|
-
"returns": "void"
|
|
21471
|
-
},
|
|
21472
|
-
"signInWithPassword": {
|
|
21473
|
-
"description": "Sign in with email and password.",
|
|
21474
|
-
"parameters": {
|
|
21475
|
-
"email": {
|
|
21476
|
-
"type": "string",
|
|
21477
|
-
"description": "Parameter email"
|
|
21478
|
-
},
|
|
21479
|
-
"password": {
|
|
21480
|
-
"type": "string",
|
|
21481
|
-
"description": "Parameter password"
|
|
21482
|
-
}
|
|
21483
|
-
},
|
|
21484
|
-
"required": [
|
|
21485
|
-
"email",
|
|
21486
|
-
"password"
|
|
21487
|
-
],
|
|
21488
|
-
"returns": "void"
|
|
21489
|
-
},
|
|
21490
|
-
"signUp": {
|
|
21491
|
-
"description": "Create a new user account with email and password.",
|
|
21492
|
-
"parameters": {
|
|
21493
|
-
"email": {
|
|
21494
|
-
"type": "string",
|
|
21495
|
-
"description": "Parameter email"
|
|
21496
|
-
},
|
|
21497
|
-
"password": {
|
|
21498
|
-
"type": "string",
|
|
21499
|
-
"description": "Parameter password"
|
|
21500
|
-
}
|
|
21501
|
-
},
|
|
21502
|
-
"required": [
|
|
21503
|
-
"email",
|
|
21504
|
-
"password"
|
|
21505
|
-
],
|
|
21506
|
-
"returns": "void"
|
|
21507
|
-
},
|
|
21508
|
-
"signOut": {
|
|
21509
|
-
"description": "Sign the current user out.",
|
|
21510
|
-
"parameters": {},
|
|
21511
|
-
"required": [],
|
|
21512
|
-
"returns": "void"
|
|
21513
|
-
},
|
|
21514
|
-
"getSession": {
|
|
21515
|
-
"description": "Get the current session, if any.",
|
|
21516
|
-
"parameters": {},
|
|
21517
|
-
"required": [],
|
|
21518
|
-
"returns": "void"
|
|
21519
|
-
},
|
|
21520
|
-
"getUser": {
|
|
21521
|
-
"description": "Get the current user, if any.",
|
|
21522
|
-
"parameters": {},
|
|
21523
|
-
"required": [],
|
|
21524
|
-
"returns": "void"
|
|
21525
|
-
},
|
|
21526
|
-
"invoke": {
|
|
21527
|
-
"description": "Invoke a Supabase Edge Function by name.",
|
|
21528
|
-
"parameters": {
|
|
21529
|
-
"name": {
|
|
21530
|
-
"type": "string",
|
|
21531
|
-
"description": "Parameter name"
|
|
21532
|
-
},
|
|
21533
|
-
"body": {
|
|
21534
|
-
"type": "any",
|
|
21535
|
-
"description": "Parameter body"
|
|
21536
|
-
}
|
|
21537
|
-
},
|
|
21538
|
-
"required": [
|
|
21539
|
-
"name"
|
|
21540
|
-
],
|
|
21541
|
-
"returns": "void"
|
|
21542
|
-
},
|
|
21543
|
-
"subscribe": {
|
|
21544
|
-
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
21545
|
-
"parameters": {
|
|
21546
|
-
"channelName": {
|
|
21547
|
-
"type": "string",
|
|
21548
|
-
"description": "A name for this subscription channel"
|
|
21549
|
-
},
|
|
21550
|
-
"table": {
|
|
21551
|
-
"type": "string",
|
|
21552
|
-
"description": "The table to listen to"
|
|
21553
|
-
},
|
|
21554
|
-
"callback": {
|
|
21555
|
-
"type": "(payload: any) => void",
|
|
21556
|
-
"description": "Called with the payload on each change"
|
|
21557
|
-
},
|
|
21558
|
-
"event": {
|
|
21559
|
-
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
21560
|
-
"description": "The event type to listen for (default: all changes)"
|
|
21561
|
-
}
|
|
21562
|
-
},
|
|
21563
|
-
"required": [
|
|
21564
|
-
"channelName",
|
|
21565
|
-
"table",
|
|
21566
|
-
"callback"
|
|
21567
|
-
],
|
|
21568
|
-
"returns": "RealtimeChannel"
|
|
21569
|
-
},
|
|
21570
|
-
"unsubscribe": {
|
|
21571
|
-
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
21572
|
-
"parameters": {
|
|
21573
|
-
"channelName": {
|
|
21574
|
-
"type": "string",
|
|
21575
|
-
"description": "The channel name to remove"
|
|
21576
|
-
}
|
|
21577
|
-
},
|
|
21578
|
-
"required": [
|
|
21579
|
-
"channelName"
|
|
21580
|
-
],
|
|
21581
|
-
"returns": "void"
|
|
21582
|
-
},
|
|
21583
|
-
"unsubscribeAll": {
|
|
21584
|
-
"description": "Unsubscribe and remove all realtime channels.",
|
|
21585
|
-
"parameters": {},
|
|
21586
|
-
"required": [],
|
|
21587
|
-
"returns": "void"
|
|
21588
|
-
},
|
|
21589
|
-
"connect": {
|
|
21590
|
-
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
21591
|
-
"parameters": {},
|
|
21592
|
-
"required": [],
|
|
21593
|
-
"returns": "void"
|
|
21594
|
-
},
|
|
21595
|
-
"disconnect": {
|
|
21596
|
-
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
21597
|
-
"parameters": {},
|
|
21598
|
-
"required": [],
|
|
21599
|
-
"returns": "void"
|
|
21600
|
-
}
|
|
21601
|
-
},
|
|
21602
|
-
"getters": {
|
|
21603
|
-
"sdk": {
|
|
21604
|
-
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
21605
|
-
"returns": "SupabaseSDKClient<any, any>"
|
|
21606
|
-
},
|
|
21607
|
-
"storage": {
|
|
21608
|
-
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
21609
|
-
"returns": "any"
|
|
21610
|
-
},
|
|
21611
|
-
"functions": {
|
|
21612
|
-
"description": "Returns the Supabase Functions client.",
|
|
21613
|
-
"returns": "any"
|
|
21614
|
-
}
|
|
21615
|
-
},
|
|
21616
|
-
"events": {},
|
|
21617
|
-
"state": {},
|
|
21618
|
-
"options": {},
|
|
21619
|
-
"envVars": [],
|
|
21620
|
-
"examples": [
|
|
21621
|
-
{
|
|
21622
|
-
"language": "ts",
|
|
21623
|
-
"code": "const supabase = container.client('supabase', {\n supabaseUrl: 'https://xyz.supabase.co',\n supabaseKey: 'your-anon-key',\n})\n\n// Query data\nconst { data } = await supabase.from('users').select('*')\n\n// Auth\nawait supabase.signInWithPassword('user@example.com', 'password')\n\n// Realtime\nsupabase.subscribe('changes', 'users', (payload) => {\n console.log('Change:', payload)\n})"
|
|
21624
|
-
}
|
|
21625
|
-
]
|
|
21626
|
-
},
|
|
21627
21627
|
{
|
|
21628
21628
|
"id": "servers.mcp",
|
|
21629
21629
|
"description": "MCP (Model Context Protocol) server for exposing tools, resources, and prompts to AI clients like Claude Code. Uses the low-level MCP SDK Server class directly with Zod 4 native JSON Schema conversion. Register tools, resources, and prompts programmatically, then start the server over stdio (for CLI integration) or HTTP (for remote access).",
|