Misar.Blog MCP Server
What this MCP does
Publishes and manages blog articles, drafts, series, reactions, newsletters, comments, SEO titles, cover images, and analytics.
Tools
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['article_id', 'type'], 'properties': {'type': {'enum': ['like', 'clap', 'bookmark'], 'type': 'string', 'description': "Which reaction to add: 'like' approval, 'clap' stronger approval, 'bookmark' save for later."}, 'article_id': {'type': 'string', 'format': 'uuid', 'description': 'UUID of the article to react to, from the `id` field of article tools.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['series_slug', 'article_slug'], 'properties': {'position': {'type': 'integer', 'minimum': 1, 'description': '1-based position within the series. Omit to append at the end. Inserting shifts later articles down.'}, 'series_slug': {'type': 'string', 'description': 'Slug of the target series, from get_series. Not its title or id.'}, 'article_slug': {'type': 'string', 'description': 'Slug of the article to add, from list_my_articles. Not its title or id.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['title', 'body_markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Topic tags to carry through to publication.'}, 'title': {'type': 'string', 'minLength': 1, 'description': 'Working headline. Can be changed before publishing.'}, 'body_markdown': {'type': 'string', 'minLength': 1, 'description': 'Article body so far, as Markdown.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['title'], 'properties': {'title': {'type': 'string', 'minLength': 1, 'description': 'Display name of the series. The slug is derived from this.'}, 'description': {'type': 'string', 'description': 'Short summary shown on the series page. Optional.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['prompt'], 'properties': {'size': {'enum': ['1024x1024', '1792x1024', '1024x1792'], 'type': 'string', 'default': '1792x1024', 'description': "Output dimensions: '1792x1024' landscape (the default, best for article covers), '1024x1024' square, '1024x1792' portrait."}, 'prompt': {'type': 'string', 'maxLength': 1000, 'minLength': 1, 'description': 'What the image should show, in plain language, up to 1000 characters. Describe subject and style; avoid asking for text in the image.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['prompt'], 'properties': {'prompt': {'type': 'string', 'maxLength': 500, 'minLength': 3, 'description': "Topic or target keywords, 3-500 characters. Include niche, audience and any long-tail phrase you want to rank for, e.g. 'best AI writing tools for beginner bloggers 2025'."}, 'context': {'type': 'string', 'maxLength': 8000, 'description': 'Optional draft text (plain or Markdown, up to 8000 chars) so the titles match what the article actually says. Titles still follow `prompt` for keywords.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'days': {'type': 'integer', 'default': 30, 'maximum': 365, 'minimum': 1, 'description': 'Size of the trailing window in days, ending today. 1-365, defaults to 30. Use 7 for a week, 365 for a year.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "URL slug of the article, e.g. 'how-we-cut-build-times'. Not the numeric id, and not the full URL."}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['user_id'], 'properties': {'user_id': {'type': 'string', 'format': 'uuid', 'description': 'UUID of the profile to check, as returned in author fields by article tools. Not the username.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['article_id'], 'properties': {'article_id': {'type': 'string', 'format': 'uuid', 'description': 'UUID of the article, from the `id` field returned by article tools.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['article_id'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'Comments per page, 1-100. Defaults to 20.'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': 'Comments to skip before this page. Defaults to 0.'}, 'article_id': {'type': 'string', 'format': 'uuid', 'description': 'UUID of the article, as returned in the `id` field by article tools. Not the slug.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'Maximum articles to return, 1-100. Defaults to 20.'}, 'status': {'enum': ['draft', 'published', 'scheduled', 'archived'], 'type': 'string', 'description': 'Return only articles in this state. Omit to return every state the account owns.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1, 'description': 'Issues to return, 1-50, newest first. Defaults to 10.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'Subscribers per page, 1-100. Defaults to 20.'}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': 'Subscribers to skip before this page. Defaults to 0.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['title', 'body_markdown'], 'properties': {'tags': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 10, 'description': 'Up to 10 topic tags used for discovery and filtering.'}, 'title': {'type': 'string', 'maxLength': 250, 'minLength': 1, 'description': 'Headline, 1-250 characters.'}, 'visibility': {'enum': ['public', 'subscribers', 'paid', 'private'], 'type': 'string', 'default': 'public', 'description': "Audience: 'public' anyone, 'subscribers' newsletter subscribers, 'paid' paying members, 'private' only you. Defaults to 'public'."}, 'schedule_at': {'type': 'string', 'description': "ISO 8601 timestamp to publish at, e.g. '2026-09-01T09:00:00Z'. Omit to publish immediately. A past timestamp publishes immediately."}, 'body_markdown': {'type': 'string', 'minLength': 1, 'description': 'Complete article body as Markdown. Images may be referenced by URL.'}, 'cover_image_url': {'type': 'string', 'format': 'uri', 'description': 'Absolute URL of the hero image. generate_cover_image returns a URL suitable here.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['article_id', 'type'], 'properties': {'type': {'enum': ['like', 'clap', 'bookmark'], 'type': 'string', 'description': "Which reaction to withdraw: 'like', 'clap', or 'bookmark'."}, 'article_id': {'type': 'string', 'format': 'uuid', 'description': 'UUID of the article to un-react to, from the `id` field of article tools.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 500, 'minLength': 5, 'description': "The topic or question to research, 5-500 characters. Specific beats broad: 'how small SaaS teams price annual plans' returns more than 'pricing'."}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'minLength': 2, 'description': 'Free-text query matched against title and body. Minimum 2 characters.'}, 'tag': {'type': 'string', 'description': 'Restrict to articles carrying this exact tag.'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 20, 'minimum': 1, 'description': 'Maximum results to return, 1-20. Defaults to 10.'}, 'author': {'type': 'string', 'description': 'Restrict to one author, by username.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['context'], 'properties': {'context': {'type': 'string', 'maxLength': 8000, 'minLength': 20, 'description': 'The article text to draw titles from, plain or Markdown, 20-8000 characters. More of the real draft yields better-fitting titles than a summary.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'minLength': 1, 'description': 'Article or draft id from a listing tool. This is the id, not the slug.'}, 'tags': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 10, 'description': 'Replacement tag list, up to 10. Overwrites the existing tags entirely.'}, 'title': {'type': 'string', 'maxLength': 500, 'minLength': 1, 'description': 'Replacement headline.'}, 'body_markdown': {'type': 'string', 'minLength': 1, 'description': 'Replacement body as Markdown. Replaces the whole body, not a patch.'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'open': {'type': 'boolean', 'description': "Open the checkout page in the user's default browser. Side effect on their desktop — only when they asked to upgrade."}, 'plan': {'type': 'string', 'description': "Plan slug to open, e.g. 'pro' or 'business'. Defaults to the recommended plan. Only meaningful with open=true."}, 'start_trial': {'type': 'boolean', 'description': "Enrol in the free no-card trial now, if eligible. This changes the account's plan — do not set it speculatively."}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
Hermoso
Supports ad research, competitor analysis, video and static ad creation, campaign policy checks, content publishing, and performa…
Heista
Analyzes video advertising, builds brand intelligence profiles, researches markets, and generates advertising scripts and creativ…
Spook SEO
Provides SEO analysis, keyword and content generation, AEO checks, ad copy tools and automated article generation and publishing.
VarynForge
Supports SEO research and content planning through niche analysis, competitor and keyword research, opportunity discovery, and wr…
AfterLaunch: the agentic growth marketing engine
Runs growth-marketing workflows covering SEO, AI-search visibility, competitor analysis, content planning, distribution channels,…
RoboWrite
Supports brand setup, content briefs, AI-generated drafts, editorial review, quality checks, and publishing workflows.
ai-content-drop
Generates AI images, videos, UGC clips, avatars, and finished ads, while organizing creative assets and campaign boards.
Newswire Com
Searches and retrieves recent press releases from Newswire.com's public newsroom feed.