Skip to main content
Glama

πŸš€ CreatorOS AI

MCP-Powered AI Content Creation Agent

CreatorOS AI is an AI-powered content creation platform that combines Google Gemini, Tavily real-time web search, Streamlit, and Model Context Protocol (MCP) to research topics and generate high-quality content in multiple formats.

It provides a user-friendly web interface while also exposing reusable AI tools through an MCP server.


✨ Features

πŸ“ Multi-Format Content Generation

CreatorOS AI can generate:

  • πŸ“° Blog Posts

  • πŸ’Ό LinkedIn Posts

  • πŸŽ₯ YouTube Scripts

  • πŸ“Έ Instagram Captions

  • 🐦 Twitter/X Threads

  • πŸ“š Research Summaries

  • πŸ“§ Emails

  • πŸ“¨ Newsletters

  • ✏️ Content Rewriting

  • πŸ“ Content Summarization

  • βž• Content Expansion

  • πŸ§‘β€πŸ’» Content Humanization

  • πŸ” SEO Titles

  • 🌐 Meta Descriptions

🌍 Real-Time Research

Uses Tavily Search to retrieve current information from the web before generating content.

This helps the agent work with more up-to-date information rather than relying only on the language model's existing knowledge.

πŸ€– Gemini-Powered Generation

Uses Google's Gemini API for content generation and transformation.

πŸ”Œ MCP Server

CreatorOS AI includes a dedicated MCP server exposing reusable content-generation tools.

This allows the content-generation capabilities to be consumed by MCP-compatible clients instead of being limited to the Streamlit application.

🎨 Modern Web Interface

Built with Streamlit and customized with CSS to provide a modern dark-themed AI workspace.

🎯 Multiple Writing Tones

Users can generate content using different tones:

  • Professional

  • Friendly

  • Educational

  • Storytelling

  • Marketing


πŸ—οΈ Architecture

                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚      User            β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                               β–Ό
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚   Streamlit UI       β”‚
                    β”‚   CreatorOS AI        β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                               β–Ό
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚   Content Pipeline   β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                               β”‚
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚                           β”‚
                 β–Ό                           β–Ό
       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
       β”‚   Tavily Search  β”‚        β”‚   Google Gemini  β”‚
       β”‚  Real-Time Data  β”‚        β”‚ Content Creation β”‚
       β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                β”‚                           β”‚
                β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              β”‚
                              β–Ό
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚   Generated Content  β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜


             MCP Integration
             
       MCP Client / Compatible Client
                    β”‚
                    β–Ό
            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
            β”‚   MCP Server    β”‚
            β”‚  mcp_server.py  β”‚
            β””β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                     β”‚
                     β–Ό
              CreatorOS Tools

## βš™οΈ Environment

Copy `.env.example` to `.env` and configure the Gemini, Tavily, PostgreSQL, Django, and JWT secrets.

For local development, run the FastAPI API and Streamlit frontend separately:

```bash
uv run uvicorn api.main:app --reload
uv run streamlit run app.py

The optional MCP server uses the same FastAPI backend and requires a valid CREATOROS_API_TOKEN.

Available Tools

16 tools
delete_generationC

Delete one saved CreatorOS generation.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idYes
generation_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full behavioral disclosure burden, but it only says 'Delete' and does not state that deletion is permanent/irreversible, whether associated data is removed, or whether special permissions are required. It does at least signal a destructive action.

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

Conciseness5/5

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

The description is one short sentence with no filler or redundancy. It is front-loaded and easy to parse; under-specification is already penalized in other dimensions.

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

Completeness2/5

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

Although this is a simple two-parameter operation and an output schema exists, the complete absence of annotations and parameter guidance leaves an agent without critical information about prerequisites and side effects. It is not complete enough for confident invocation.

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

Parameters1/5

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

Schema description coverage is 0% and the description adds no meaning beyond the parameter names project_id and generation_id. An agent gets no information about ID format, relationship, or how to discover valid values, so the description fails to compensate for the empty schema.

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?

The description uses a specific verb ('Delete') and resource ('one saved CreatorOS generation'), clearly distinguishing this from the sibling generate_*/list/get tools. Even though title is null and there is no sibling delete alternative, the action is unambiguous.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool, how to obtain the required project_id and generation_id, or any prerequisites such as checking existence via list_generations/get_generation. There are no exclusions or alternative routing, so an agent must infer context from sibling names.

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

expand_contentC

Expand existing content for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
contentYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations present, the description carries the full burden of behavioral disclosure. It only states that existing content is expanded, leaving unclear whether this is a pure transformation, how much expansion occurs, what side effects exist, or what the output contains.

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?

The description is a single front-loaded sentence with no wasted words. However, it is concise to the point of under-specification, so it loses a point for missing substance.

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

Completeness2/5

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

The tool has no annotations and zero schema description coverage. The output schema exists, but the description still does not explain the tool's behavior, the tone parameter, or when this tool should be chosen over similar content-generation siblings.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not mention tone, content, or project_id explicitly. 'Existing content' and 'CreatorOS project' loosely imply the content and project_id parameters, but the required tone parameter is completely unexplained.

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

Purpose4/5

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

The description identifies a clear action ('expand') and a resource ('existing content' for a CreatorOS project). It loosely differentiates from siblings like rewrite_content and summarize_content, but it does not specify what expansion means or what the resulting content looks like.

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

Usage Guidelines2/5

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

There is no guidance on when to use expand_content instead of sibling tools such as rewrite_content, summarize_content, or humanize_content. The description gives no context, conditions, or exclusions, so an agent must infer the appropriate scenario.

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

generate_blogC

Generate a professional blog post for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of disclosing behavior. It only states that the tool generates a blog post, without mentioning any side effects (e.g., whether the post is saved to the project), limits, or asynchronous behavior. The word 'professional' hints at tone but does not reveal how the generation process behaves or what the agent should expect.

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?

The description is a single efficient sentence with no filler. It front-loads the core action and resource. However, it sacrifices informative content for brevity, making it more under-specified than truly concise.

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

Completeness2/5

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

Although the tool is simple and has an output schema, the description is too thin for an agent to call it correctly in the context of many similar generation tools. It lacks usage context, parameter explanations, and any note about what the result is or how it integrates with a project. The output schema may document returns, but the input side is underserved.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate by explaining parameters, but it doesn't mention 'topic,' 'project_id,' or 'tone' at all. The only hint is 'professional,' which only loosely maps to the tone parameter's default. The schema provides types and defaults, but the description adds no semantic meaning or usage context for any parameter.

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?

The description uses a specific verb ('Generate') and a concrete resource ('a professional blog post'), scoped to 'a CreatorOS project.' This cleanly distinguishes it from sibling tools like generate_linkedin_post or generate_youtube_script, which target different content formats.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to choose this tool over alternatives, nor any mention of exclusions. An agent must infer from the tool name and the sibling list that this is for blog content only, which is implied rather than stated. No context or routing cues are provided.

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

generate_emailC

Generate a professional email for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It only says 'Generate a professional email', which states the obvious action but provides no detail on side effects, whether the generation is persisted, how the project context influences the output, or any rate/usage limitations. The behavioral surface is almost entirely unexplained.

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

Conciseness3/5

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

The text is a single, front-loaded sentence with no verbosity, which is efficient. However, it is underspecifiedβ€”it omits nearly all operational details an agent needs. This is closer to under-specification than disciplined conciseness, so it earns a middle score.

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

Completeness2/5

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

For a tool with three parameters, zero schema descriptions, and no annotations, the description is woefully incomplete. While the presence of an output schema covers return values, the agent is left guessing about input semantics, usage context relative to siblings, and behavioral consequences. The definition does not provide enough context for correct invocation.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must compensate by explaining the parameters. It entirely fails to do so: there is no clarification of what project_id refers to, what topic should contain, or how tone behaves beyond the default. The phrase 'for a CreatorOS project' vaguely hints at project_id but does not map to parameters meaningfully. An agent has no information to fill the required fields correctly.

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?

The description clearly states a specific verb ('Generate'), a concrete resource ('a professional email'), and the scope ('for a CreatorOS project'). It is easily distinguishable from sibling tools like generate_linkedin_post or generate_newsletter because the resource is unique. This is a clear, non-tautological definition.

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

Usage Guidelines3/5

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

The description implies the tool is used when an email needs to be generated, and the resource name itself signals its purpose relative to the content-generation siblings. However, there is no explicit guidance on when to choose this over alternatives (e.g., generate_newsletter) or any other exclusion criteria. Usage is implied rather than stated.

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

generate_instagram_captionC

Generate an Instagram caption for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoFriendly
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations present, the description carries the full burden of behavioral disclosure. It only says 'Generate,' without revealing whether content is persisted, how tone affects output, what the response returns, or any side effects. This is a significant gap for a content-generation tool.

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?

The description is a single, efficient sentence that immediately states the action and target. It is front-loaded and free of filler, though the extreme brevity contributes to under-specification.

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

Completeness2/5

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

Given three parameters, no annotations, and no explanation of generation behavior, the description is too thin to be complete. The presence of an output schema helps, but the description still leaves tone handling, project context, and sibling-tool differentiation unexplained.

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

Parameters2/5

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

Schema description coverage is 0% and the description adds no parameter-level meaning. It references 'CreatorOS project,' which loosely maps to project_id, but says nothing about topic or tone. The description fails to compensate for the schema's lack of explanatory text.

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

Purpose4/5

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

The description clearly states a specific action ('Generate') and resource ('Instagram caption') within the context of a CreatorOS project. It distinguishes itself from sibling tools that target other platforms like LinkedIn, YouTube, or Twitter, though it doesn't elaborate on caption-specific nuances.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives like generate_linkedin_post or rewrite_content. The platform name implies the use case, but there are no explicit conditions, exclusions, or alternative routing cues.

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

generate_linkedin_postC

Generate a LinkedIn post for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'Generate a LinkedIn post' and does not state whether this creates a stored generation, requires any project state, consumes credits, or simply returns a draft. There is no contradiction, but there is also no meaningful behavioral context beyond the verb.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler or redundant phrasing. It states the action immediately and earns its place by adding the CreatorOS project context.

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

Completeness2/5

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

Given three parameters, zero annotation coverage, and a large sibling set, the description is too sparse to fully orient an agent. The presence of an output schema covers return-value shape, but the description still leaves parameter semantics, usage timing, and side effects unexplained.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any of the three parameters. It only weakly hints at project_id via 'for a CreatorOS project', leaving topic and tone undefined. This is a significant gap for a tool with two required parameters.

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

Purpose4/5

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

The description clearly states the verb ('Generate') and the output resource ('a LinkedIn post'), and the platform is enough to distinguish it from sibling tools like generate_youtube_script and generate_instagram_caption. It does not explicitly name an alternative or add much beyond the tool name, so it stops short of a 5.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance, no prerequisites, and no mention of alternatives. An agent can infer from the tool name and sibling list that it is for LinkedIn posts specifically, but the description itself does not help disambiguate or route between the many sibling generation tools.

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

generate_meta_descriptionB

Generate an SEO meta description for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only says 'Generate', which suggests a content-creation action, but it does not disclose whether the result is returned or persisted, whether any project state is changed, or what constraints or side effects exist.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every word contributes to the core purpose.

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

Completeness2/5

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

Given the absence of annotations and parameter descriptions, the one-liner is too thin to fully prepare an agent. The output schema helps, but the tool still lacks usage guidance, parameter meaning, and behavioral context needed for confident invocation.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not compensate. It indirectly references project_id via 'CreatorOS project' but never mentions topic, so the agent gets no semantic guidance beyond the raw parameter names and types.

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?

The description states a specific verb and resource: 'Generate an SEO meta description for a CreatorOS project.' This is distinct from sibling tools like generate_seo_title and clearly identifies the output artifact and scope.

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

Usage Guidelines3/5

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

The description implies the tool should be used when an SEO meta description is needed, but it does not explicitly say when to prefer it over related tools such as generate_seo_title. No alternatives or exclusions are mentioned, leaving the routing mostly to inference.

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

generate_newsletterB

Generate a newsletter for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries full responsibility for behavioral disclosure. It only says 'Generate a newsletter', without clarifying whether the content is persisted, requires a valid existing project, incurs cost, or has other side effects.

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

Conciseness5/5

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

The description is a single, focused sentence with no filler or redundant phrases. It front-loads the action and immediately identifies the artifact and domain.

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

Completeness2/5

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

With three parameters, no annotations, and only one vague sentence, the description is not complete enough for an agent to select and invoke the tool confidently. Output schema may describe return data, but it does not compensate for missing usage and parameter semantics.

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

Parameters2/5

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

Schema description coverage is 0% and the description adds minimal parameter meaning. It hints that project_id refers to a CreatorOS project, but does not explain the expected value of topic or the meaning/options of tone beyond the schema's default value.

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?

The description states a specific verb ('Generate'), a distinct artifact ('newsletter'), and a clear domain ('CreatorOS project'). It differentiates from sibling tools like generate_linkedin_post or generate_blog by naming the exact content type.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool over alternatives such as generate_email or generate_blog, and offers no exclusions or prerequisites. Usage context is only implied by the artifact name rather than stated.

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

generate_seo_titleC

Generate an SEO title for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'generate,' which implies a non-destructive action, but does not disclose whether the tool creates a persistent record, consumes credits, requires authentication, or has any side effects. This is a significant gap for a tool with zero annotation support.

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

Conciseness5/5

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

The description is a single sentence with no filler or unnecessary detail. It is front-loaded with the primary action and resource, making it highly scannable for an agent.

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

Completeness2/5

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

The tool has two required parameters, no annotations, and no parameter descriptions in the schema or the description. The description does not provide enough context for an agent to know what to pass for 'topic' or 'project_id', nor when to prefer this over sibling tools. While an output schema exists, the missing usage and parameter guidance makes the definition incomplete.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not compensate by explaining the meaning or usage of the two required parameters ('topic' and 'project_id'). The parameter names are only weakly self-explanatory, and no additional semantics are provided.

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

Purpose4/5

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

The description states a specific verb ('Generate') and resource ('an SEO title for a CreatorOS project'). It clearly identifies the tool's output type, which is distinct from sibling tools like generate_meta_description or generate_blog, though it does not explicitly differentiate itself.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives such as generate_meta_description or generate_blog. The usage context is only implied by the tool name and purpose, with no exclusions or conditions stated.

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

generate_twitter_threadC

Generate a Twitter/X thread for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.2/5.0
Behavior1/5

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

No annotations are provided, so the description carries the full burden of disclosing behavioral traits such as side effects, output format, or whether the thread is saved. The description simply says 'generate' without any additional context. This is inadequate for a tool that likely creates content and interacts with a project.

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

Conciseness3/5

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

The description is concise and front-loads the main action, but it is under-specified. It is a single sentence with minimal information, which could be considered efficient but lacks necessary structure. It does not list parameters or usage notes, making it somewhat hollow despite being short.

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

Completeness1/5

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

Given the tool has three parameters, an output schema, and no annotations, the description is nowhere near complete. It fails to explain what a 'thread' involves, how the topic and tone influence it, or what the output might look like. An agent would need to inspect the schema and output schema to understand the tool's behavior, but with no descriptive support, the context is missing.

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

Parameters1/5

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

The schema has three parameters (tone, topic, project_id) with 0% schema description coverage. The description does not mention any of these parameters or their roles. Since the schema coverage is low and the description offers no compensation, an agent has to rely solely on the schema, which may lack sufficient semantic detail (e.g., what 'tone' accepts beyond a default).

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

Purpose4/5

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

The description clearly states the action ('Generate') and the resource ('Twitter/X thread') and scopes it to 'a CreatorOS project'. This distinguishes it from sibling tools like generate_linkedin_post or generate_youtube_script, which target different platforms. However, it lacks any detail about the project context or what makes this tool unique beyond the platform.

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

Usage Guidelines2/5

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

There is no guidance on when to use this tool versus alternatives, no mention of prerequisites (e.g., project must exist), or conditions that would make this tool preferable. The description only explains what it does, leaving the agent to infer usage from the tool name and siblings.

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

generate_youtube_scriptC

Generate a YouTube script for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
topicYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.2/5.0
Behavior1/5

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

With no annotations present, the description carries the full burden of disclosing side effects, persistence, permissions, or whether the generation creates a saved record. It simply says 'Generate' and offers no behavioral context beyond the bare operation, leaving the agent blind to any state-changing or long-running behavior.

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

Conciseness2/5

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

The description is short, but it is under-specified rather than usefully concise. One generic sentence does not earn its keep because it omits critical behavioral and parameter context while offering no structural benefit.

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

Completeness2/5

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

There is an output schema, so return-value details may be covered elsewhere, and the operation is conceptually simple. However, the description is incomplete for a tool with no annotations and no parameter guidance, leaving the agent without clarity on expected inputs, side effects, or how this generation relates to the CreatorOS project.

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

Parameters1/5

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

Schema description coverage is 0%, so parameter semantics must come from the description, but it adds nothing about project_id, topic, or tone. The schema only provides property names and a default for tone, and the description does not clarify how these fields should be used together.

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

Purpose4/5

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

The description states a specific action ('Generate') and resource ('a YouTube script'), and the 'CreatorOS project' context anchors it to the tool family. It is not a tautology, and the resource name distinguishes it from sibling content-generation tools like generate_linkedin_post or generate_blog, though it does not explicitly elaborate on the script format or scope.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus the many sibling generation tools, nor does it mention prerequisites such as whether the project must already exist. The only implied usage is that it is for YouTube scripts, which is not sufficient guidance on its own.

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

get_generationB

Open one saved CreatorOS generation by project and generation ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idYes
generation_idYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It indicates a read operation by using 'open', but does not mention whether it retrieves full content, whether it is idempotent, or possible errors. It provides some scope but lacks depth for a retrieval operation.

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

Conciseness5/5

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

The description is a single, concise sentence that front-loads the action and the key identifiers. It avoids unnecessary detail and is entirely focused on the essential information.

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

Completeness3/5

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

Given the tool's simplicityβ€”two integer parameters and no output schemaβ€”the description is mostly adequate for an agent to understand what it does. However, it lacks any mention of output format, potential errors, or scope of the returned generation, which could be important for a domain-specific tool like CreatorOS.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for the spartan parameter titles. It mentions 'project and generation ID' but does not explain their roles or formats (e.g., are they required together, what are valid values). This is minimal value above the schema.

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

Purpose4/5

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

The description clearly states the tool opens a saved generation by project and generation ID, which is a specific verb-resource combination. It distinguishes from sibling tools that generate new content, and even from list_generations and delete_generation which are about other operations on generations. It could be more explicit about what 'open' means (e.g., retrieve vs. display), but it is clear enough.

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

Usage Guidelines3/5

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

The description implies when to use it (when you need to access a previously saved generation), but it does not explicitly state when not to use it or mention alternatives. Given the sibling tools include only list and delete for generations, the intended use is fairly clear without explicit routing, but guidance is minimal.

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

humanize_contentC

Humanize existing content for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoFriendly
contentYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of explaining behavior. It states that content is humanized, but does not disclose whether the content is mutated in place, whether output is returned, what side effects occur, or what 'humanized' means operationally. This is a significant gap for a transformation tool.

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?

The description is a single clear sentence with no filler or repetition, and the core action is front-loaded. It is concise, though the brevity contributes to under-specification in other dimensions.

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

Completeness2/5

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

For a tool with three parameters, no annotations, and many sibling content tools, the description is too sparse. It does not explain the meaning of 'humanize', when to use it, how tone behaves, or what the output contains. The presence of an output schema reduces the need to describe return values, but the usage and behavior context remain incomplete.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, but it only loosely maps to parameters: 'content' and 'CreatorOS project' suggest content and project_id. The tone parameter is completely unaddressed, and no parameter-level guidance is given.

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

Purpose4/5

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

The description names a specific verb ('humanize') and resource ('existing content for a CreatorOS project'), which distinguishes it from content-generation siblings. However, 'humanize' is somewhat undefined and it does not explicitly differentiate from rewrite_content, though 'existing' implies a non-generative operation.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to choose this tool over rewrite_content, summarize_content, expand_content, or the generation tools. The phrase 'existing content' implies it operates on already-created content, but no alternatives or exclusions are stated.

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

list_generationsC

List saved generations for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
project_idYes

TDQS

C2.8/5.0
Behavior2/5

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

There are no annotations, so the description carries the full burden of behavioral disclosure. It communicates that this is a read/list operation, but it does not mention pagination, ordering, output shape, whether full content or metadata is returned, or any access requirements.

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

Conciseness5/5

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

The description is a single, front-loaded sentence with no filler. Every word adds meaning, and it is appropriately sized for a simple list operation.

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

Completeness2/5

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

For a tool with no annotations and no output schema, this description is too thin. It omits return-value expectations, pagination/ordering behavior, and how it relates to get_generation for retrieving a single saved generation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description needed to compensate. It indirectly references project_id as 'a CreatorOS project,' but it adds no meaningful detail about how the ID is used, what format it expects, or how results are scoped beyond that phrase.

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

Purpose4/5

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

The description states a clear verb ('List') and resource ('saved generations') scoped to a CreatorOS project. It is distinct from generate_* siblings by focusing on already-saved items, though it does not explicitly differentiate from the sibling get_generation.

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

Usage Guidelines2/5

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

No guidance is given about when to use this tool versus get_generation or the generate_* tools. The intended use is implied by the name, but there are no exclusions or alternative routing cues.

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

rewrite_contentC

Rewrite existing content for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
contentYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavior on its own. It only says 'rewrite existing content' without stating whether the original is overwritten, whether a new generation is created, what permissions are required, or what the response contains. This is a significant gap for a mutation-like tool.

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?

Single sentence with no filler and the core action front-loaded. It is concise, though the brevity comes at the cost of missing behavioral and usage details.

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

Completeness2/5

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

For a tool with no annotations, 0% schema description coverage, and many sibling tools, this description is too sparse. It provides the basic purpose but omits usage, parameter semantics, and behavioral details needed to invoke it correctly.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain the parameters. It loosely maps 'existing content' to the content parameter and 'CreatorOS project' to project_id, but tone is entirely unexplained.

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

Purpose4/5

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

The description states a specific verb ('rewrite'), resource ('existing content'), and context ('CreatorOS project'). It distinguishes from siblings by indicating it operates on existing content rather than generating new content, though it does not explicitly name alternatives.

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

Usage Guidelines2/5

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

No guidance is given on when to use this tool versus siblings like humanize_content, summarize_content, or the generate_* tools. The phrase 'existing content' implies a use case, but there are no explicit conditions, prerequisites, or exclusions.

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

summarize_contentC

Summarize existing content for a CreatorOS project.

ParametersJSON Schema
NameRequiredDescriptionDefault
toneNoProfessional
contentYes
project_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only says 'summarize' and gives no information about side effects, whether the original content is modified, what the output looks like, or any permissions or limitations.

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?

The description is a single, front-loaded sentence with no wasted words. It is efficient and easy to parse, though it is terse to the point of under-specification in other dimensions.

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

Completeness2/5

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

With no annotations and 0% schema description coverage, the description is too thin to fully support correct invocation. It does not explain what 'summarize' produces, how tone affects the result, or what content/project_id mean beyond their names. The output schema exists, but input semantics are largely unaddressed.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not mention any of the three parameters (project_id, content, tone). The description fails to compensate for the schema's lack of parameter documentation, leaving the agent to infer semantics from names alone.

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

Purpose4/5

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

The description clearly states the action ('Summarize') and the resource ('existing content for a CreatorOS project'), making the tool's purpose immediately understandable. It implicitly distinguishes itself from the generate_* siblings by focusing on existing content, but it does not explicitly name or contrast with alternatives like rewrite_content or expand_content.

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

Usage Guidelines2/5

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

The description gives no guidance on when to use this tool versus rewrite_content, expand_content, or humanize_content. It only states the general action, with no mention of prerequisites, exclusions, or alternative selection criteria.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 16 tool updatesv0.1.0
    • First observeddelete_generation
    • First observedexpand_content
    • First observedgenerate_blog
    • First observedgenerate_email
    • First observedgenerate_instagram_caption
    • First observedgenerate_linkedin_post
    • First observedgenerate_meta_description
    • First observedgenerate_newsletter
    • First observedgenerate_seo_title
    • First observedgenerate_twitter_thread
    • First observedgenerate_youtube_script
    • First observedget_generation
    • First observedhumanize_content
    • First observedlist_generations
    • First observedrewrite_content
    • First observedsummarize_content

TDQS

B3/5.0

Scored across 16 tools

Disambiguation4/5

Most tools are clearly differentiated by output format or transformation type, and each has a distinct purpose. The only mild overlap is between rewrite_content and humanize_content, which could cause occasional misselection.

Naming Consistency4/5

The set mostly follows a consistent snake_case verb_noun pattern, e.g., generate_linkedin_post, summarize_content, delete_generation. The main inconsistency is generate_blog rather than generate_blog_post, which breaks the pattern used by other platform-specific generators.

Tool Count4/5

Sixteen tools is slightly above the typical well-scoped range, but the count is reasonable for a content generation server covering multiple platforms and content operations. Each tool adds a distinct capability, so the size feels justified.

Completeness4/5

The tool surface covers generation for major content types, transformation of existing content, SEO metadata, and saved-generation lifecycle management. Minor gaps such as no update/rename operation for saved generations are workable and do not cripple core workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers