Skip to main content

Knowledge Base Update Faq

Immutable Catalog Entry

This descriptor comes from the active versioned Portal catalog.

WRITEghl.knowledge_base_update_faq
  • Contract tier: agent_ready
  • Risk: write
  • Catalog version: 2026-07-12.2
  • Descriptor hash: 544dc538dc57cbb9d1f59faf4c4474d3635e72064595d63ef663983b4e2b6110

Update an existing FAQ in a GHL knowledge base. GHL category: Sites / Knowledge Base. This writes to GHL Knowledge Base content or crawler state. Do not crawl, train, or modify production knowledge bases during validation unless the user explicitly provides disposable fixtures.

Request Body

{
"jsonrpc": "2.0",
"id": "ghl-knowledge-base-update-faq-example",
"method": "tools/call",
"params": {
"name": "ghl.knowledge_base_update_faq",
"arguments": {
"id": "id_123",
"body": {},
"query": {},
"tenantId": "tenantId_123",
"locationId": "locationId_123",
"strictTenant": false
}
}
}

Arguments Schema

{
"type": "object",
"required": [
"id",
"body"
],
"properties": {
"id": {
"type": "string",
"description": "id path parameter required by /knowledge-bases/faqs/:id."
},
"body": {
"type": "object",
"description": "Request body for this official GHL Knowledge Base endpoint, using only fields documented by GHL.",
"additionalProperties": true
},
"query": {
"type": "object",
"description": "Optional GHL-supported query parameters for this official Knowledge Base endpoint, such as pagination, knowledgeBaseId, lastFaqId, URL filters, or crawler filters from the official docs.",
"additionalProperties": true
},
"tenantId": {
"type": "string",
"description": "Tenant ID from list_tenants."
},
"locationId": {
"type": "string",
"description": "Optional GHL location ID. If provided, it must match the authenticated runtime location; otherwise the runtime location is used automatically."
},
"strictTenant": {
"type": "boolean",
"default": true,
"description": "Require tenantId to match locationId routing (default: true)."
}
},
"additionalProperties": false
}

Output Schema

{
"type": "object",
"required": [
"ok",
"data",
"error",
"meta"
],
"properties": {
"ok": {
"type": "boolean",
"description": "Whether the GHL MCP operation completed successfully."
},
"data": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "array",
"items": {}
},
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
}
],
"description": "Tool-specific GHL or local navigation result when ok is true."
},
"meta": {
"type": "object",
"description": "Safe execution, routing, and timing metadata.",
"additionalProperties": true
},
"error": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"description": "Safe error details when ok is false; credential values are never returned."
}
},
"description": "Normalized GHL MCP response envelope.",
"additionalProperties": false
}

Code Examples

curl -X POST 'https://portal.madpanda3d.com/api/mcp' \
-H 'Authorization: Bearer mad_live_***' \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": "ghl-knowledge-base-update-faq-example",
"method": "tools/call",
"params": {
"name": "ghl.knowledge_base_update_faq",
"arguments": {
"id": "id_123",
"body": {},
"query": {},
"tenantId": "tenantId_123",
"locationId": "locationId_123",
"strictTenant": false
}
}
}'

Example Responses

{
"ok": true,
"message": "Tool ghl.knowledge_base_update_faq executed successfully.",
"note": "Response shape varies by MCP tool. Inspect live responses for exact fields."
}