Turns a news headline into a verified, ready-to-publish blog post corroborates the story across independent publishers, extracts sourced facts, writes the article, and builds the SEO, schema and banner prompt around it.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add newsblog-composer --env TAVILY_API_KEY='<TAVILY_API_KEY>' --env GPTZERO_API_KEY='<GPTZERO_API_KEY>' --env CLOUDFLARE_API_TOKEN='<CLOUDFLARE_API_TOKEN>' -- uvx newsblog-composer-mcp~/.codex/config.toml
[mcp_servers.newsblog-composer]
command = "uvx"
args = ["newsblog-composer-mcp"]
env = { TAVILY_API_KEY = "<TAVILY_API_KEY>", GPTZERO_API_KEY = "<GPTZERO_API_KEY>", CLOUDFLARE_API_TOKEN = "<CLOUDFLARE_API_TOKEN>" }
# codex mcp add newsblog-composer --env TAVILY_API_KEY='<TAVILY_API_KEY>' --env GPTZERO_API_KEY='<GPTZERO_API_KEY>' --env CLOUDFLARE_API_TOKEN='<CLOUDFLARE_API_TOKEN>' -- uvx newsblog-composer-mcp~/.cursor/mcp.json
{
"mcpServers": {
"newsblog-composer": {
"command": "uvx",
"args": [
"newsblog-composer-mcp"
],
"env": {
"TAVILY_API_KEY": "<TAVILY_API_KEY>",
"GPTZERO_API_KEY": "<GPTZERO_API_KEY>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"newsblog-composer": {
"type": "stdio",
"command": "uvx",
"args": [
"newsblog-composer-mcp"
],
"env": {
"TAVILY_API_KEY": "<TAVILY_API_KEY>",
"GPTZERO_API_KEY": "<GPTZERO_API_KEY>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"newsblog-composer": {
"command": "uvx",
"args": [
"newsblog-composer-mcp"
],
"env": {
"TAVILY_API_KEY": "<TAVILY_API_KEY>",
"GPTZERO_API_KEY": "<GPTZERO_API_KEY>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"newsblog-composer": {
"command": "uvx",
"args": [
"newsblog-composer-mcp"
],
"env": {
"TAVILY_API_KEY": "<TAVILY_API_KEY>",
"GPTZERO_API_KEY": "<GPTZERO_API_KEY>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"newsblog-composer": {
"command": "uvx",
"args": [
"newsblog-composer-mcp"
],
"env": {
"TAVILY_API_KEY": "<TAVILY_API_KEY>",
"GPTZERO_API_KEY": "<GPTZERO_API_KEY>",
"CLOUDFLARE_API_TOKEN": "<CLOUDFLARE_API_TOKEN>"
}
}
}
}Environment variables
TAVILY_API_KEYGPTZERO_API_KEYCLOUDFLARE_API_TOKEN
Replace the placeholders with your own credentials and keep them out of version control.