@xano/developer-mcp 1.0.27 → 1.0.29

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.
Files changed (77) hide show
  1. package/README.md +1 -1
  2. package/dist/api_docs/format.d.ts +5 -0
  3. package/dist/api_docs/format.js +171 -0
  4. package/dist/api_docs/index.d.ts +52 -0
  5. package/dist/api_docs/index.js +111 -0
  6. package/dist/api_docs/topics/agent.d.ts +2 -0
  7. package/dist/api_docs/topics/agent.js +142 -0
  8. package/dist/api_docs/topics/api.d.ts +2 -0
  9. package/dist/api_docs/topics/api.js +176 -0
  10. package/dist/api_docs/topics/apigroup.d.ts +2 -0
  11. package/dist/api_docs/topics/apigroup.js +124 -0
  12. package/dist/api_docs/topics/authentication.d.ts +2 -0
  13. package/dist/api_docs/topics/authentication.js +61 -0
  14. package/dist/api_docs/topics/branch.d.ts +2 -0
  15. package/dist/api_docs/topics/branch.js +73 -0
  16. package/dist/api_docs/topics/file.d.ts +2 -0
  17. package/dist/api_docs/topics/file.js +70 -0
  18. package/dist/api_docs/topics/function.d.ts +2 -0
  19. package/dist/api_docs/topics/function.js +164 -0
  20. package/dist/api_docs/topics/history.d.ts +2 -0
  21. package/dist/api_docs/topics/history.js +149 -0
  22. package/dist/api_docs/topics/mcp_server.d.ts +2 -0
  23. package/dist/api_docs/topics/mcp_server.js +139 -0
  24. package/dist/api_docs/topics/middleware.d.ts +2 -0
  25. package/dist/api_docs/topics/middleware.js +156 -0
  26. package/dist/api_docs/topics/realtime.d.ts +2 -0
  27. package/dist/api_docs/topics/realtime.js +112 -0
  28. package/dist/api_docs/topics/start.d.ts +2 -0
  29. package/dist/api_docs/topics/start.js +107 -0
  30. package/dist/api_docs/topics/table.d.ts +2 -0
  31. package/dist/api_docs/topics/table.js +195 -0
  32. package/dist/api_docs/topics/task.d.ts +2 -0
  33. package/dist/api_docs/topics/task.js +165 -0
  34. package/dist/api_docs/topics/tool.d.ts +2 -0
  35. package/dist/api_docs/topics/tool.js +150 -0
  36. package/dist/api_docs/topics/workflows.d.ts +2 -0
  37. package/dist/api_docs/topics/workflows.js +131 -0
  38. package/dist/api_docs/topics/workspace.d.ts +2 -0
  39. package/dist/api_docs/topics/workspace.js +153 -0
  40. package/dist/api_docs/types.d.ts +79 -0
  41. package/dist/api_docs/types.js +4 -0
  42. package/dist/meta_api_docs/topics/branch.js +154 -18
  43. package/dist/meta_api_docs/topics/workspace.js +45 -2
  44. package/dist/templates/init-workspace.d.ts +10 -0
  45. package/dist/templates/init-workspace.js +278 -0
  46. package/dist/templates/xanoscript-index.d.ts +11 -0
  47. package/dist/templates/xanoscript-index.js +72 -0
  48. package/dist/xanoscript_docs/README.md +3 -13
  49. package/dist/xanoscript_docs/ephemeral.md +330 -0
  50. package/dist/xanoscript_docs/functions.md +0 -21
  51. package/dist/xanoscript_docs/integrations.md +0 -10
  52. package/dist/xanoscript_docs/performance.md +1 -10
  53. package/dist/xanoscript_docs/realtime.md +1 -48
  54. package/dist/xanoscript_docs/security.md +2 -0
  55. package/dist/xanoscript_docs/tools.md +2 -21
  56. package/dist/xanoscript_docs/triggers.md +2 -27
  57. package/dist/xanoscript_docs_auto/README.md +119 -0
  58. package/dist/xanoscript_docs_auto/agents.md +446 -0
  59. package/dist/xanoscript_docs_auto/apis.md +517 -0
  60. package/dist/xanoscript_docs_auto/control-flow.md +543 -0
  61. package/dist/xanoscript_docs_auto/database.md +551 -0
  62. package/dist/xanoscript_docs_auto/debugging.md +527 -0
  63. package/dist/xanoscript_docs_auto/filters.md +464 -0
  64. package/dist/xanoscript_docs_auto/functions.md +431 -0
  65. package/dist/xanoscript_docs_auto/integrations.md +657 -0
  66. package/dist/xanoscript_docs_auto/mcp-servers.md +408 -0
  67. package/dist/xanoscript_docs_auto/operators.md +368 -0
  68. package/dist/xanoscript_docs_auto/syntax.md +287 -0
  69. package/dist/xanoscript_docs_auto/tables.md +447 -0
  70. package/dist/xanoscript_docs_auto/tasks.md +479 -0
  71. package/dist/xanoscript_docs_auto/testing.md +574 -0
  72. package/dist/xanoscript_docs_auto/tools.md +485 -0
  73. package/dist/xanoscript_docs_auto/triggers.md +595 -0
  74. package/dist/xanoscript_docs_auto/types.md +323 -0
  75. package/dist/xanoscript_docs_auto/variables.md +462 -0
  76. package/dist/xanoscript_docs_auto/version.json +5 -0
  77. package/package.json +1 -1
@@ -0,0 +1,153 @@
1
+ export const workspaceDoc = {
2
+ topic: "workspace",
3
+ title: "Workspace Management",
4
+ description: `Workspaces are the top-level container for all Xano resources. Each workspace contains databases, APIs, functions, tasks, agents, and more.
5
+
6
+ ## Key Operations
7
+ - List/get workspaces
8
+ - Export/import workspace data
9
+ - Generate workspace context for AI
10
+ - Get OpenAPI specifications
11
+ - Convert between XanoScript and JSON`,
12
+ ai_hints: `- Use \`getWorkspaceContext\` first to understand workspace structure
13
+ - Export before making major changes (backup)
14
+ - Check branch before modifying (prod vs dev)
15
+ - \`export-schema\` is lighter than \`export\` (schema only vs full data)
16
+ - OpenAPI spec useful for understanding available endpoints`,
17
+ endpoints: [
18
+ {
19
+ method: "GET",
20
+ path: "/workspace",
21
+ tool_name: "listWorkspaces",
22
+ description: "List all accessible workspaces with pagination and filtering.",
23
+ parameters: [
24
+ { name: "page", type: "integer", default: 1, description: "Page number" },
25
+ { name: "per_page", type: "integer", default: 50, description: "Items per page (max 10000)" },
26
+ { name: "search", type: "string", description: "Search by workspace name" },
27
+ { name: "sort", type: "string", enum: ["id", "name", "created_at"], default: "created_at", description: "Sort field" },
28
+ { name: "order", type: "string", enum: ["asc", "desc"], default: "desc", description: "Sort direction" }
29
+ ]
30
+ },
31
+ {
32
+ method: "GET",
33
+ path: "/workspace/{workspace_id}",
34
+ tool_name: "getWorkspace",
35
+ description: "Get details of a specific workspace.",
36
+ parameters: [
37
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
38
+ ]
39
+ },
40
+ {
41
+ method: "POST",
42
+ path: "/workspace/{workspace_id}/export-schema",
43
+ tool_name: "exportWorkspaceSchema",
44
+ description: "Export database schemas and branch configuration only (lighter than full export).",
45
+ parameters: [
46
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
47
+ { name: "password", type: "string", description: "Optional encryption password" }
48
+ ]
49
+ },
50
+ {
51
+ method: "POST",
52
+ path: "/workspace/{workspace_id}/export",
53
+ tool_name: "exportWorkspace",
54
+ description: "Export complete workspace data and configuration including APIs, functions, data.",
55
+ parameters: [
56
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
57
+ { name: "password", type: "string", description: "Optional encryption password" }
58
+ ]
59
+ },
60
+ {
61
+ method: "POST",
62
+ path: "/workspace/{workspace_id}/import",
63
+ tool_name: "importWorkspace",
64
+ description: "Import and restore workspace content from an export file.",
65
+ parameters: [
66
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
67
+ ],
68
+ request_body: {
69
+ type: "multipart/form-data",
70
+ properties: {
71
+ file: { type: "file", description: "Export file to import", required: true },
72
+ password: { type: "string", description: "Decryption password if encrypted" }
73
+ }
74
+ }
75
+ },
76
+ {
77
+ method: "POST",
78
+ path: "/workspace/{workspace_id}/import-schema",
79
+ tool_name: "importWorkspaceSchema",
80
+ description: "Import database schema into a new branch.",
81
+ parameters: [
82
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
83
+ ],
84
+ request_body: {
85
+ type: "multipart/form-data",
86
+ properties: {
87
+ file: { type: "file", description: "Schema export file", required: true },
88
+ password: { type: "string", description: "Decryption password if encrypted" }
89
+ }
90
+ }
91
+ },
92
+ {
93
+ method: "GET",
94
+ path: "/workspace/{workspace_id}/openapi",
95
+ tool_name: "getWorkspaceOpenAPI",
96
+ description: "Get OpenAPI v3 specification for all APIs in the workspace.",
97
+ parameters: [
98
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
99
+ ]
100
+ },
101
+ {
102
+ method: "GET",
103
+ path: "/workspace/{workspace_id}/context",
104
+ tool_name: "getWorkspaceContext",
105
+ description: "Generate complete workspace context map for AI agents. Essential for understanding workspace structure.",
106
+ parameters: [
107
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
108
+ { name: "format", type: "string", enum: ["json", "yaml"], default: "json", description: "Output format" },
109
+ { name: "user_descriptions", type: "boolean", default: false, description: "Include user-provided descriptions" },
110
+ { name: "ai_descriptions", type: "boolean", default: false, description: "Include AI-generated descriptions" }
111
+ ]
112
+ },
113
+ {
114
+ method: "POST",
115
+ path: "/workspace/{workspace_id}/convert/fromXS",
116
+ tool_name: "convertFromXanoScript",
117
+ description: "Convert XanoScript code to JSON format for programmatic manipulation.",
118
+ parameters: [
119
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
120
+ ],
121
+ request_body: {
122
+ type: "text/x-xanoscript",
123
+ description: "XanoScript code to convert"
124
+ }
125
+ },
126
+ {
127
+ method: "POST",
128
+ path: "/workspace/{workspace_id}/convert/toXS",
129
+ tool_name: "convertToXanoScript",
130
+ description: "Convert JSON to XanoScript format for human-readable code.",
131
+ parameters: [
132
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
133
+ ],
134
+ request_body: {
135
+ type: "application/json",
136
+ description: "JSON structure to convert to XanoScript"
137
+ }
138
+ }
139
+ ],
140
+ schemas: {
141
+ Workspace: {
142
+ type: "object",
143
+ properties: {
144
+ id: { type: "integer", description: "Unique workspace ID" },
145
+ name: { type: "string", description: "Workspace name" },
146
+ description: { type: "string", description: "Workspace description" },
147
+ created_at: { type: "string", format: "date-time" },
148
+ updated_at: { type: "string", format: "date-time" }
149
+ }
150
+ }
151
+ },
152
+ related_topics: ["apigroup", "table", "function", "branch"]
153
+ };
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Type definitions for Xano Meta API documentation
3
+ */
4
+ export type HttpMethod = "GET" | "POST" | "PUT" | "DELETE";
5
+ export interface ParameterDoc {
6
+ name: string;
7
+ type: string;
8
+ required?: boolean;
9
+ default?: unknown;
10
+ description: string;
11
+ enum?: string[];
12
+ in?: "path" | "query" | "header";
13
+ }
14
+ export interface RequestBodyDoc {
15
+ type: string;
16
+ description?: string;
17
+ properties?: Record<string, {
18
+ type: string;
19
+ description?: string;
20
+ required?: boolean;
21
+ }>;
22
+ example?: unknown;
23
+ }
24
+ export interface ResponseDoc {
25
+ type: string;
26
+ description?: string;
27
+ properties?: Record<string, unknown>;
28
+ }
29
+ export interface RequestExampleDoc {
30
+ method: string;
31
+ path: string;
32
+ headers?: Record<string, string>;
33
+ body?: unknown;
34
+ }
35
+ export interface EndpointDoc {
36
+ method: HttpMethod;
37
+ path: string;
38
+ tool_name?: string;
39
+ description: string;
40
+ tags?: string[];
41
+ parameters?: ParameterDoc[];
42
+ request_body?: RequestBodyDoc;
43
+ response?: ResponseDoc;
44
+ example?: RequestExampleDoc;
45
+ }
46
+ export interface ExampleDoc {
47
+ title: string;
48
+ description: string;
49
+ request: {
50
+ method: string;
51
+ path: string;
52
+ headers?: Record<string, string>;
53
+ body?: unknown;
54
+ };
55
+ response?: unknown;
56
+ }
57
+ export interface PatternDoc {
58
+ name: string;
59
+ description?: string;
60
+ steps: string[];
61
+ example?: string;
62
+ }
63
+ export interface TopicDoc {
64
+ topic: string;
65
+ title: string;
66
+ description: string;
67
+ endpoints?: EndpointDoc[];
68
+ examples?: ExampleDoc[];
69
+ related_topics?: string[];
70
+ schemas?: Record<string, unknown>;
71
+ patterns?: PatternDoc[];
72
+ ai_hints?: string;
73
+ }
74
+ export type DetailLevel = "overview" | "detailed" | "examples";
75
+ export interface ApiDocsArgs {
76
+ topic: string;
77
+ detail_level?: DetailLevel;
78
+ include_schemas?: boolean;
79
+ }
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Type definitions for Xano Meta API documentation
3
+ */
4
+ export {};
@@ -4,22 +4,23 @@ export const branchDoc = {
4
4
  description: `Branches provide environment separation for your Xano workspace. Use branches for development, staging, and production environments.
5
5
 
6
6
  ## Key Concepts
7
- - Default branch is "v1" (cannot be deleted)
7
+ - Default branch is "v1" (cannot be deleted or renamed)
8
8
  - Branches contain separate databases and configurations
9
9
  - One branch is designated as "live" (production)
10
+ - Create branches by cloning from existing branches
10
11
  - Useful for safe development without affecting production
11
- - Import schema to create new branches from exports
12
12
 
13
13
  ## Common Workflow
14
- 1. Create a development branch
15
- 2. Make and test changes on dev branch
16
- 3. Export schema from dev
17
- 4. Import schema to production branch`,
14
+ 1. Create a development branch by cloning from "v1"
15
+ 2. Make and test changes on the dev branch
16
+ 3. Set the dev branch as live when ready
17
+ 4. Or merge changes back to production manually`,
18
18
  ai_hints: `- Cannot delete the "v1" branch or the live branch
19
- - Use branch parameter in list endpoints to filter by branch
20
- - Import schema creates a new branch from export file
21
- - Always verify branch before making changes (dev vs prod)
22
- - Export before major changes for backup`,
19
+ - Cannot update/rename the "v1" branch label
20
+ - Use "v1" as the source_branch when cloning from the default branch
21
+ - The "live" property indicates which branch is active for API requests
22
+ - "backup" property indicates if branch was created as a backup
23
+ - Always verify branch before making changes (dev vs prod)`,
23
24
  endpoints: [
24
25
  {
25
26
  method: "GET",
@@ -30,11 +31,78 @@ export const branchDoc = {
30
31
  { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
31
32
  ]
32
33
  },
34
+ {
35
+ method: "GET",
36
+ path: "/workspace/{workspace_id}/branch/{branch_label}",
37
+ tool_name: "getBranch",
38
+ description: "Retrieve details for a specific branch by label. Use 'v1' for the default branch.",
39
+ parameters: [
40
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
41
+ { name: "branch_label", type: "string", required: true, in: "path", description: "Branch label (use 'v1' for default branch)" }
42
+ ]
43
+ },
44
+ {
45
+ method: "POST",
46
+ path: "/workspace/{workspace_id}/branch",
47
+ tool_name: "createBranch",
48
+ description: "Create a new branch by cloning from an existing branch. Use 'v1' as source_branch for the default branch.",
49
+ parameters: [
50
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
51
+ ],
52
+ request_body: {
53
+ type: "object",
54
+ properties: {
55
+ source_branch: { type: "string", description: "Label of the branch to clone from. Defaults to 'v1'", required: false },
56
+ label: { type: "string", description: "Label for the new branch", required: true },
57
+ description: { type: "string", description: "Description for the new branch", required: false },
58
+ color: { type: "string", description: "Color hex code for the branch (e.g., '#ebc346')", required: false }
59
+ },
60
+ example: {
61
+ source_branch: "v1",
62
+ label: "feature-branch",
63
+ description: "A new feature branch",
64
+ color: "#ebc346"
65
+ }
66
+ }
67
+ },
68
+ {
69
+ method: "PUT",
70
+ path: "/workspace/{workspace_id}/branch/{branch_label}",
71
+ tool_name: "updateBranch",
72
+ description: "Update an existing branch's label, description, or color. Cannot update the default 'v1' branch label.",
73
+ parameters: [
74
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
75
+ { name: "branch_label", type: "string", required: true, in: "path", description: "Current label of the branch to update" }
76
+ ],
77
+ request_body: {
78
+ type: "object",
79
+ properties: {
80
+ label: { type: "string", description: "New label for the branch", required: false },
81
+ description: { type: "string", description: "New description for the branch", required: false },
82
+ color: { type: "string", description: "New color hex code for the branch", required: false }
83
+ },
84
+ example: {
85
+ label: "updated-branch",
86
+ description: "Updated description",
87
+ color: "#ff5733"
88
+ }
89
+ }
90
+ },
91
+ {
92
+ method: "POST",
93
+ path: "/workspace/{workspace_id}/branch/{branch_label}/live",
94
+ tool_name: "setBranchLive",
95
+ description: "Set a branch as the live (active) branch for the workspace. The live branch is the default branch used for API requests.",
96
+ parameters: [
97
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
98
+ { name: "branch_label", type: "string", required: true, in: "path", description: "Label of the branch to set as live (use 'v1' for default)" }
99
+ ]
100
+ },
33
101
  {
34
102
  method: "DELETE",
35
103
  path: "/workspace/{workspace_id}/branch/{branch_label}",
36
104
  tool_name: "deleteBranch",
37
- description: "Delete a branch. Cannot delete 'v1' or the live branch.",
105
+ description: "Delete a branch. Cannot delete the 'v1' branch or the currently live branch.",
38
106
  parameters: [
39
107
  { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" },
40
108
  { name: "branch_label", type: "string", required: true, in: "path", description: "Branch label/name to delete" }
@@ -45,9 +113,10 @@ export const branchDoc = {
45
113
  Branch: {
46
114
  type: "object",
47
115
  properties: {
116
+ created_at: { type: "string", format: "date-time", description: "When the branch was created" },
48
117
  label: { type: "string", description: "Branch identifier (e.g., 'v1', 'dev')" },
49
- is_live: { type: "boolean", description: "Whether this is the live/production branch" },
50
- created_at: { type: "string", format: "date-time" }
118
+ backup: { type: "boolean", description: "Whether this branch was created as a backup" },
119
+ live: { type: "boolean", description: "Whether this is the live/production branch" }
51
120
  }
52
121
  }
53
122
  },
@@ -60,12 +129,79 @@ export const branchDoc = {
60
129
  path: "/workspace/1/branch",
61
130
  headers: { "Authorization": "Bearer <token>" }
62
131
  },
132
+ response: [
133
+ { created_at: "2024-01-15T10:30:00Z", label: "v1", backup: false, live: true },
134
+ { created_at: "2024-02-01T14:20:00Z", label: "dev", backup: false, live: false },
135
+ { created_at: "2024-02-10T09:15:00Z", label: "staging", backup: false, live: false }
136
+ ]
137
+ },
138
+ {
139
+ title: "Get a specific branch",
140
+ description: "Retrieve details for a single branch",
141
+ request: {
142
+ method: "GET",
143
+ path: "/workspace/1/branch/dev",
144
+ headers: { "Authorization": "Bearer <token>" }
145
+ },
146
+ response: {
147
+ created_at: "2024-02-01T14:20:00Z",
148
+ label: "dev",
149
+ backup: false,
150
+ live: false
151
+ }
152
+ },
153
+ {
154
+ title: "Create a new branch",
155
+ description: "Clone from v1 to create a development branch",
156
+ request: {
157
+ method: "POST",
158
+ path: "/workspace/1/branch",
159
+ headers: { "Authorization": "Bearer <token>" },
160
+ body: {
161
+ source_branch: "v1",
162
+ label: "feature-auth",
163
+ description: "Authentication feature development",
164
+ color: "#ebc346"
165
+ }
166
+ },
167
+ response: {
168
+ created_at: "2024-02-11T10:00:00Z",
169
+ label: "feature-auth",
170
+ backup: false,
171
+ live: false
172
+ }
173
+ },
174
+ {
175
+ title: "Update a branch",
176
+ description: "Rename a branch and update its color",
177
+ request: {
178
+ method: "PUT",
179
+ path: "/workspace/1/branch/feature-auth",
180
+ headers: { "Authorization": "Bearer <token>" },
181
+ body: {
182
+ label: "feature-authentication",
183
+ color: "#ff5733"
184
+ }
185
+ },
186
+ response: {
187
+ created_at: "2024-02-11T10:00:00Z",
188
+ label: "feature-authentication",
189
+ backup: false
190
+ }
191
+ },
192
+ {
193
+ title: "Set branch as live",
194
+ description: "Make a branch the active production branch",
195
+ request: {
196
+ method: "POST",
197
+ path: "/workspace/1/branch/staging/live",
198
+ headers: { "Authorization": "Bearer <token>" }
199
+ },
63
200
  response: {
64
- items: [
65
- { label: "v1", is_live: true },
66
- { label: "dev", is_live: false },
67
- { label: "staging", is_live: false }
68
- ]
201
+ created_at: "2024-02-10T09:15:00Z",
202
+ label: "staging",
203
+ backup: false,
204
+ live: true
69
205
  }
70
206
  }
71
207
  ],
@@ -4,7 +4,7 @@ export const workspaceDoc = {
4
4
  description: `Workspaces are the top-level container for all Xano resources. Each workspace contains databases, APIs, functions, tasks, agents, and more.
5
5
 
6
6
  ## Key Operations
7
- - List/get workspaces
7
+ - Create/list/get/update/delete workspaces
8
8
  - Export/import workspace data
9
9
  - Generate workspace context for AI
10
10
  - Get OpenAPI specifications
@@ -13,7 +13,9 @@ export const workspaceDoc = {
13
13
  - Export before making major changes (backup)
14
14
  - Check branch before modifying (prod vs dev)
15
15
  - \`export-schema\` is lighter than \`export\` (schema only vs full data)
16
- - OpenAPI spec useful for understanding available endpoints`,
16
+ - OpenAPI spec useful for understanding available endpoints
17
+ - \`deleteWorkspace\` requires user confirmation - workspaces with active tenants cannot be deleted
18
+ - Workspace creation is limited by the package tier`,
17
19
  endpoints: [
18
20
  {
19
21
  method: "GET",
@@ -37,6 +39,38 @@ export const workspaceDoc = {
37
39
  { name: "workspace_id", type: "integer", required: true, in: "path", description: "Workspace ID" }
38
40
  ]
39
41
  },
42
+ {
43
+ method: "POST",
44
+ path: "/workspace",
45
+ tool_name: "addWorkspace",
46
+ description: "Create a new workspace. Respects the instance workspace limit based on the package tier.",
47
+ parameters: [
48
+ { name: "name", type: "string", required: true, description: "Name of the workspace" },
49
+ { name: "description", type: "string", description: "Description for the workspace" }
50
+ ]
51
+ },
52
+ {
53
+ method: "PUT",
54
+ path: "/workspace/{workspace_id}",
55
+ tool_name: "updateWorkspace",
56
+ description: "Update an existing workspace's settings.",
57
+ parameters: [
58
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "ID of the workspace to update" },
59
+ { name: "name", type: "string", description: "New name for the workspace" },
60
+ { name: "description", type: "string", description: "New description for the workspace" },
61
+ { name: "swagger", type: "boolean", description: "Enable or disable swagger documentation" },
62
+ { name: "documentation.require_token", type: "boolean", description: "Whether to require a token for documentation access" }
63
+ ]
64
+ },
65
+ {
66
+ method: "DELETE",
67
+ path: "/workspace/{workspace_id}",
68
+ tool_name: "deleteWorkspace",
69
+ description: "Delete a workspace and all its data permanently. Cannot delete a workspace that has active tenants.",
70
+ parameters: [
71
+ { name: "workspace_id", type: "integer", required: true, in: "path", description: "ID of the workspace to delete" }
72
+ ]
73
+ },
40
74
  {
41
75
  method: "POST",
42
76
  path: "/workspace/{workspace_id}/export-schema",
@@ -144,6 +178,15 @@ export const workspaceDoc = {
144
178
  id: { type: "integer", description: "Unique workspace ID" },
145
179
  name: { type: "string", description: "Workspace name" },
146
180
  description: { type: "string", description: "Workspace description" },
181
+ swagger: { type: "boolean", description: "Whether swagger documentation is enabled" },
182
+ documentation: {
183
+ type: "object",
184
+ properties: {
185
+ link: { type: "string", description: "Link to the documentation" },
186
+ require_token: { type: "boolean", description: "Whether a token is required for documentation access" }
187
+ }
188
+ },
189
+ branch: { type: "string", description: "Current branch label" },
147
190
  created_at: { type: "string", format: "date-time" },
148
191
  updated_at: { type: "string", format: "date-time" }
149
192
  }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Template for init_workspace tool documentation
3
+ * Edit this file to update the workspace initialization guide
4
+ */
5
+ export interface ObjectTypeConfig {
6
+ type: string;
7
+ path: string;
8
+ endpoint: string;
9
+ }
10
+ export declare function generateInitWorkspaceTemplate(objectTypes: ObjectTypeConfig[]): string;