UNPKG

n8n-bookstack-agent-tool

Version:

Comprehensive BookStack API integration tool for n8n AI Agent with MCP framework compatibility

347 lines (346 loc) 11.6 kB
{ "$schema": "http://json-schema.org/draft-07/schema#", "title": "BookStack n8n Agent Tool Commands", "description": "Available commands for the BookStack n8n Agent Tool with MCP framework compatibility", "type": "object", "properties": { "commands": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "inputSchema": { "type": "object", "properties": { "type": { "type": "string" }, "properties": { "type": "object" }, "required": { "type": "array", "items": { "type": "string" } } } } } } } }, "commands": [ { "name": "getDocs", "description": "Load the docs page for the API.", "inputSchema": { "type": "object", "properties": {}, "required": [] } }, { "name": "getDocsJson", "description": "Show a JSON view of the API docs data.", "inputSchema": { "type": "object", "properties": {}, "required": [] } }, { "name": "listAttachments", "description": "Get a listing of attachments visible to the user. The external property indicates whether the attachment is simple a link.", "inputSchema": { "type": "object", "properties": { "count": { "type": "integer", "minimum": 1, "maximum": 500, "description": "Number of records to return" }, "offset": { "type": "integer", "minimum": 0, "description": "Number of records to skip" }, "sort": { "type": "string", "description": "Field to sort by with optional +/- prefix" } }, "required": [] } }, { "name": "createAttachment", "description": "Create a new attachment in the system. An uploaded_to value must be provided containing an ID of the page.", "inputSchema": { "type": "object", "properties": { "name": { "type": "string", "description": "name field" }, "uploaded_to": { "type": "integer", "description": "uploaded_to field" }, "link": { "type": "string", "description": "link field" }, "file": { "type": "string", "description": "file field" } }, "required": ["uploaded_to"] } }, { "name": "getAttachment", "description": "Get the details & content of a single attachment of the given ID.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "updateAttachment", "description": "Update the details of a single attachment.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" }, "name": { "type": "string", "description": "name field" }, "link": { "type": "string", "description": "link field" } }, "required": ["id"] } }, { "name": "deleteAttachment", "description": "Delete an attachment of the given ID.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "listBooks", "description": "Get a listing of books visible to the user.", "inputSchema": { "type": "object", "properties": { "count": { "type": "integer", "minimum": 1, "maximum": 500, "description": "Number of records to return" }, "offset": { "type": "integer", "minimum": 0, "description": "Number of records to skip" }, "sort": { "type": "string", "description": "Field to sort by with optional +/- prefix" } }, "required": [] } }, { "name": "createBook", "description": "Create a new book in the system.", "inputSchema": { "type": "object", "properties": { "name": { "type": "string", "description": "name field" }, "description": { "type": "string", "description": "description field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["name"] } }, { "name": "getBook", "description": "View the details of a single book.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "updateBook", "description": "Update the details of a single book.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" }, "name": { "type": "string", "description": "name field" }, "description": { "type": "string", "description": "description field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["id"] } }, { "name": "deleteBook", "description": "Delete a single book. This will typically send the book to the recycle bin.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "exportBookHtml", "description": "Export a book as a contained HTML file.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "exportBookPdf", "description": "Export a book as a PDF file.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "exportBookPlaintext", "description": "Export a book as a plain text file.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "exportBookMarkdown", "description": "Export a book as a markdown file.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "listChapters", "description": "Get a listing of chapters visible to the user.", "inputSchema": { "type": "object", "properties": { "count": { "type": "integer", "minimum": 1, "maximum": 500, "description": "Number of records to return" }, "offset": { "type": "integer", "minimum": 0, "description": "Number of records to skip" }, "sort": { "type": "string", "description": "Field to sort by with optional +/- prefix" } }, "required": [] } }, { "name": "createChapter", "description": "Create a new chapter in the system.", "inputSchema": { "type": "object", "properties": { "name": { "type": "string", "description": "name field" }, "description": { "type": "string", "description": "description field" }, "book_id": { "type": "integer", "description": "book_id field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["name", "book_id"] } }, { "name": "getChapter", "description": "View the details of a single chapter.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "updateChapter", "description": "Update the details of a single chapter.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" }, "name": { "type": "string", "description": "name field" }, "description": { "type": "string", "description": "description field" }, "book_id": { "type": "integer", "description": "book_id field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["id"] } }, { "name": "deleteChapter", "description": "Delete a chapter. This will typically send the chapter to the recycle bin.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "listPages", "description": "Get a listing of pages visible to the user.", "inputSchema": { "type": "object", "properties": { "count": { "type": "integer", "minimum": 1, "maximum": 500, "description": "Number of records to return" }, "offset": { "type": "integer", "minimum": 0, "description": "Number of records to skip" }, "sort": { "type": "string", "description": "Field to sort by with optional +/- prefix" } }, "required": [] } }, { "name": "createPage", "description": "Create a new page in the system. The ID of a parent book or chapter is required.", "inputSchema": { "type": "object", "properties": { "name": { "type": "string", "description": "name field" }, "html": { "type": "string", "description": "html field" }, "markdown": { "type": "string", "description": "markdown field" }, "book_id": { "type": "integer", "description": "book_id field" }, "chapter_id": { "type": "integer", "description": "chapter_id field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["name"] } }, { "name": "getPage", "description": "View the details of a single page.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } }, { "name": "updatePage", "description": "Update the details of a single page.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" }, "name": { "type": "string", "description": "name field" }, "html": { "type": "string", "description": "html field" }, "markdown": { "type": "string", "description": "markdown field" }, "book_id": { "type": "integer", "description": "book_id field" }, "chapter_id": { "type": "integer", "description": "chapter_id field" }, "tags": { "type": "array", "description": "tags field" } }, "required": ["id"] } }, { "name": "deletePage", "description": "Delete a page. This will typically send the page to the recycle bin.", "inputSchema": { "type": "object", "properties": { "id": { "type": "integer", "description": "id parameter" } }, "required": ["id"] } } ] }