Skip to main content
Glama

KnowledgeOwl MCP by usefulapi

Create an article

knowledgeowl_create_article
Destructive

MUTATES KnowledgeOwl data: creates a new article. KnowledgeOwl API: POST /article.json (JSON). Required by the API: project_id, name, status, url_hash, visibility, and current_version (a nested object { <lang>: { title, body, ... } } — pass it via the fields passthrough). Returns the created article.

Input Schema

NameRequiredDescriptionDefault
nameYesThe article name/title (required).
fieldsNoAdditional documented KnowledgeOwl fields to send in the JSON write body (e.g. current_version, body) — merged OVER the typed fields above.
statusNoPublishing status, e.g. "published", "draft", "review".
url_hashNoThe article URL slug (e.g. "getting-started").
project_idYesThe knowledge base (project) id this article belongs to (required).
visibilityNoVisibility, e.g. "public" or "private".

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The annotations already declare destructiveHint=true, and the description reinforces this with an explicit 'MUTATES KnowledgeOwl data' marker rather than contradicting it. It adds value beyond annotations by disclosing the endpoint and that the call returns the created article, though it does not mention permission requirements or failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single tight paragraph with the mutation warning front-loaded and the endpoint, required fields, and return value packed efficiently into it. Minor deduction because the required-field list is dense inline and slightly muddies what the caller must actually supply versus what the API expects.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a mutating tool with a nested-object parameter and no output schema, the description covers endpoint, payload shape, passthrough mechanism, and return value. It is not fully airtight: it lists six 'API required' fields while the schema requires only project_id and name, leaving the agent to guess how much is truly mandatory versus server-defaulted.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real meaning the schema lacks: it names the six API-required fields and explains the nested shape `{ <lang>: { title, body, ... } }` for current_version, which the schema only alludes to via an 'e.g.' in the `fields` description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('creates a new article') and prefixes it with the mutation scope, which cleanly separates it from knowledgeowl_update_article and the other knowledgeowl_create_* siblings. It also names the underlying API operation (POST /article.json), removing any ambiguity about what happens.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives practical invocation guidance by naming the API-required fields and explaining that the nested current_version object must be routed through the `fields` passthrough, which is the non-obvious part of calling this tool. It stops short of explicitly contrasting creation with update_article or stating prerequisites (permissions, existing project).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.