Skip to main content
Glama
trainual

Tiptap Collaboration MCP Server

by trainual

delete_document

Remove a collaborative document from the Tiptap Collaboration MCP Server by specifying its unique ID, streamlining document management and cleanup processes.

Instructions

Delete a collaborative document

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesID of the document to delete

Implementation Reference

  • The asynchronous handler function that executes the deletion of the document by making a DELETE HTTP request to the `/api/documents/${id}` endpoint, handling errors and returning markdown content responses.
    async ({ id }) => {
      try {
        const headers: Record<string, string> = {
          'User-Agent': 'tiptap-collaboration-mcp',
          'Content-Type': 'application/json',
        };
    
        const token = getToken();
        if (token) headers['Authorization'] = token;
    
        const response = await fetch(`${getBaseUrl()}/api/documents/${id}`, {
          method: 'DELETE',
          headers,
        });
    
        if (!response.ok) {
          if (response.status === 404) {
            return {
              content: [
                {
                  type: 'text',
                  text: `Document with ID ${id} not found.`,
                },
              ],
            };
          }
          return {
            content: [
              {
                type: 'text',
                text: `Failed to delete document. HTTP error: ${response.status} ${response.statusText}`,
              },
            ],
          };
        }
    
        return {
          content: [
            {
              type: 'text',
              text: `Document with ID ${id} deleted successfully.`,
            },
          ],
        };
      } catch (error) {
        return {
          content: [
            {
              type: 'text',
              text: `Error deleting document: ${
                error instanceof Error ? error.message : 'Unknown error'
              }`,
            },
          ],
        };
      }
  • Zod input schema defining the required 'id' parameter as a string for the document to delete.
    {
      id: z.string().describe('ID of the document to delete'),
    },
  • The registration function that adds the 'delete-document' tool to the MCP server, including name, description, schema, and handler.
    export default function registerDeleteDocument(
      server: McpServer,
      getBaseUrl: () => string,
      getToken: () => string | undefined
    ) {
      server.tool(
        'delete-document',
        'Delete a collaborative document',
        {
          id: z.string().describe('ID of the document to delete'),
        },
        async ({ id }) => {
          try {
            const headers: Record<string, string> = {
              'User-Agent': 'tiptap-collaboration-mcp',
              'Content-Type': 'application/json',
            };
    
            const token = getToken();
            if (token) headers['Authorization'] = token;
    
            const response = await fetch(`${getBaseUrl()}/api/documents/${id}`, {
              method: 'DELETE',
              headers,
            });
    
            if (!response.ok) {
              if (response.status === 404) {
                return {
                  content: [
                    {
                      type: 'text',
                      text: `Document with ID ${id} not found.`,
                    },
                  ],
                };
              }
              return {
                content: [
                  {
                    type: 'text',
                    text: `Failed to delete document. HTTP error: ${response.status} ${response.statusText}`,
                  },
                ],
              };
            }
    
            return {
              content: [
                {
                  type: 'text',
                  text: `Document with ID ${id} deleted successfully.`,
                },
              ],
            };
          } catch (error) {
            return {
              content: [
                {
                  type: 'text',
                  text: `Error deleting document: ${
                    error instanceof Error ? error.message : 'Unknown error'
                  }`,
                },
              ],
            };
          }
        }
      );
    }
  • src/server.ts:48-48 (registration)
    Invocation of the registerDeleteDocument function to register the tool on the main MCP server instance.
    registerDeleteDocument(server, getBaseUrl, getToken);

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/trainual/tiptap-collaboration-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server