{"openapi":"3.0.3","info":{"title":"Gnist Context — Profanity Filter","description":"Text content moderation — check text for profanity, censor it, and return clean versions using an in-memory word list.\n\n- **MCP endpoint:** `https://context.gnist.ai/mcp/profanity-filter/`\n- **Toolkit page:** `/toolkits/profanity-filter`\n- **Full API spec:** `/api/openapi.json`\n- **Get an API key:** `/signup`","version":"1.0.0","contact":{"name":"GnistAI","url":"https://gnist.ai"}},"servers":[{"url":"https://context.gnist.ai","description":"Production"}],"paths":{"/rest/profanity-filter/check_text":{"post":{"tags":["Utilities"],"summary":"check_text","description":"Check text for profanity.\n\nReturns whether the text contains profanity, a list of flagged words,\nthe total word count, and the number of distinct flagged words.","operationId":"profanity_filter_check_text","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"text":{"description":"Text to check for profanity.","type":"string"}},"required":["text"],"type":"object"}}}}}},"/rest/profanity-filter/censor_text":{"post":{"tags":["Utilities"],"summary":"censor_text","description":"Censor profanity in text by replacing flagged words with a replacement string.\n\nReturns the censored text, original length, and the number of words censored.","operationId":"profanity_filter_censor_text","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"text":{"description":"Text to censor.","type":"string"},"replacement":{"default":"***","description":"Replacement string for profane words.","type":"string"}},"required":["text"],"type":"object"}}}}}},"/rest/profanity-filter/get_word_count":{"post":{"tags":["Utilities"],"summary":"get_word_count","description":"Get the number of words in the profanity dictionary.\n\nReturns the size of the built-in profanity word list used for filtering.","operationId":"profanity_filter_get_word_count","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}]}},"/rest/profanity-filter/report_feedback":{"post":{"tags":["Utilities"],"summary":"report_feedback","description":"Report a bug, feature request, or general feedback for this data source.\n\nUse this when something doesn't work as expected, when you'd like\na new feature, or when you have suggestions for improvement.\n\nArgs:\n    feedback: Describe the issue or suggestion.\n    feedback_type: One of 'bug', 'feature_request', or 'general'.","operationId":"profanity_filter_report_feedback","responses":{"200":{"description":"Successful tool call","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Server or tool not found"},"500":{"description":"Tool execution error"}},"security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"feedback":{"type":"string"},"feedback_type":{"default":"general","type":"string"}},"required":["feedback"],"type":"object"}}}}}}},"tags":[{"name":"Utilities","description":"Data sources: Utilities"}],"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"gnist-api-key","description":"API key passed via request header."},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"gnist_api_key","description":"API key passed via query parameter."}}}}