Skip to main content
Glama
dinwal
by dinwal

RecurPost MCP Server

An MCP (Model Context Protocol) server that gives AI assistants access to the RecurPost social media management API.

What can it do?

  • List connected social accounts and content libraries

  • List workspaces and work inside any workspace you're a member of

  • Post content immediately or schedule it for later

  • Add content to libraries for recurring/evergreen posting

  • View posting history with engagement metrics

  • Generate social media content and images with AI

  • Get URLs to connect new social media accounts

Related MCP server: Ayrshare Unofficial MCP Server

Setup

1. Get your API key

  1. Log in to RecurPost

  2. Go to Account Settings

  3. Generate an API Password Key (this is not your login password)

2. Install

Claude Desktop

Add to your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "recurpost": {
      "command": "npx",
      "args": ["-y", "recurpost-mcp"],
      "env": {
        "RECURPOST_EMAIL": "your-email@example.com",
        "RECURPOST_API_KEY": "your-api-key"
      }
    }
  }
}

Restart Claude Desktop after saving.

Claude Code

claude mcp add recurpost -- npx -y recurpost-mcp \
  -e RECURPOST_EMAIL=your-email@example.com \
  -e RECURPOST_API_KEY=your-api-key

Available Tools

Tool

Description

user_login

Verify your API credentials

workspace_list

List all workspaces you're a member of (own and shared)

social_account_list

List all connected social media accounts

library_list

List all content libraries

connect_social_account_urls

Get URLs to connect new social accounts

history_data

Get posting history for a social account

post_content

Post or schedule content to a social account

add_content_in_library

Add content to a library for recurring posting

generate_content_with_ai

Generate social media post text with AI

generate_image_with_ai

Generate images from text descriptions

Workspaces

social_account_list, library_list, history_data, post_content, and add_content_in_library accept an optional workspace_id (a ws_id from workspace_list). When omitted, your default workspace is used. When provided, results and actions are scoped to that workspace — social accounts and libraries must belong to it.

Example prompts

  • "Show me all my connected social accounts"

  • "Schedule a post about our summer sale on my Facebook page for tomorrow at 9am"

  • "Generate a LinkedIn post about remote work productivity tips"

  • "What posts went out on my Twitter account this week?"

  • "Add 5 evergreen tips about social media marketing to my Tips library"

  • "List my workspaces, then show the social accounts in the Client A workspace"

Security

  • Your credentials are stored in your local config and never leave your machine except to authenticate directly with the RecurPost API

  • The server runs locally as a subprocess — no external servers involved

  • API key and email are passed via environment variables, never exposed to the AI model

License

MIT

Available Tools

9 tools
add_content_in_libraryB

Add a post to a content library for recurring/evergreen posting

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesLibrary ID (from library_list)
messageYesDefault post content text
image_urlNoArray of image URLs to attach
video_urlNoPublic video URL to attach
urlNoWebsite link to include
host_images_on_recurpostNoHost images on RecurPost (default: true)
fb_messageNoFacebook-specific message override
tw_messageNoTwitter/X-specific message override
ln_messageNoLinkedIn-specific message override
in_messageNoInstagram-specific message override
gmb_messageNoGoogle Business Profile-specific message override
pi_messageNoPinterest-specific message override
yt_messageNoYouTube-specific message override
tk_messageNoTikTok-specific message override
th_messageNoThreads-specific message override
bs_messageNoBluesky-specific message override
fb_post_typeNoFacebook post type
in_post_typeNoInstagram post type
in_reel_share_in_feedNoShare Instagram reel in feed
first_commentNoDefault first comment
fb_first_commentNoFacebook first comment
ln_first_commentNoLinkedIn first comment
in_first_commentNoInstagram first comment
ln_documentNoLinkedIn document URL (PPT/PDF/DOCX)
ln_document_titleNoLinkedIn document title
pi_titleNoPinterest pin title
gbp_ctaNoGoogle Business Profile call to action
gbp_cta_urlNoGoogle Business Profile CTA URL
gbp_offer_titleNoGBP offer title
gbp_offer_start_dateNoGBP offer start date
gbp_offer_end_dateNoGBP offer end date
gbp_offer_coupon_codeNoGBP offer coupon code
gbp_offer_termsNoGBP offer terms and conditions
gbp_redeem_offer_linkNoGBP offer redemption URL
yt_titleNoYouTube video title
yt_categoryNoYouTube video category
yt_privacy_statusNoYouTube privacy status
yt_user_tagsNoYouTube tags
yt_thumbNoYouTube custom thumbnail URL
yt_video_made_for_kidsNoIs the YouTube video made for kids
tk_privacy_statusNoTikTok privacy status
tk_allow_commentsNoAllow TikTok comments
tk_allow_duetNoAllow TikTok duets
tk_allow_stitchesNoAllow TikTok stitches
is_top_of_queueNoAdd to top of queue (1) or bottom (0)
content_livedateNoContent live date (YYYY-MM-DD)
content_expiredateNoContent expiry date (YYYY-MM-DD)

TDQS

B3.3/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 disclosure burden for this 47-parameter write operation. It fails to mention idempotency, validation behavior, side effects, or what occurs after adding content (e.g., immediate scheduling vs. draft state).

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?

Perfectly concise at 9 words. Every term serves a purpose: action ('Add'), object ('post'), destination ('content library'), and use-case qualifier ('recurring/evergreen posting'). No redundancy or fluff.

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 high schema richness (100% coverage, 11 enums) and 47 parameters, the description is minimally adequate. However, for a complex multi-platform content tool with no output schema and no annotations, it lacks explanation of the library queuing system and platform override logic.

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

Parameters3/5

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

Schema coverage is 100% with comprehensive platform-specific field descriptions, so the description doesn't need to repeat parameter details. However, it adds no semantic context about how the platform-specific overrides (fb_message, tw_message, etc.) interact with the default message, keeping it at the baseline.

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?

Clear verb ('Add'), resource ('post'), and destination ('content library'). The phrase 'recurring/evergreen posting' effectively distinguishes this from the sibling tool 'post_content' (which implies immediate posting) though it doesn't 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 Guidelines3/5

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

The description implies usage context ('recurring/evergreen') suggesting when to use this versus one-time posting, but lacks explicit guidance on prerequisites (e.g., needing a library ID from library_list) or when NOT to use it.

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

connect_social_account_urlsB

Get URLs to connect new social media accounts to RecurPost

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. It fails to disclose whether this creates server-side state (pending connections), URL expiration behavior, or specific platform requirements. Only states it returns URLs.

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?

Single sentence, front-loaded with verb, zero waste. Appropriate length for the tool's simplicity.

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?

No output schema exists, so description should ideally elaborate on the URL format, quantity, or usage instructions. It mentions URLs but lacks critical details expected when return structure is undefined.

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?

Zero parameters present. Per scoring rules, this establishes a baseline of 4 with no deductions needed. The description does not need to compensate for missing parameter documentation.

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?

Clear verb 'Get' and resource 'URLs to connect new social media accounts', but lacks specificity about what type of URLs (OAuth, authentication) and doesn't explicitly differentiate from the sibling 'social_account_list'.

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 explicit guidance on when to use this tool versus 'social_account_list' or prerequisites for account connection. The 'new' qualifier provides minimal implicit guidance.

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

generate_content_with_aiA

Generate social media content text using RecurPost AI. Supports multi-turn conversations via ai_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
prompt_textYesTopic or text to generate content about
ai_idNoAI conversation ID from a previous response, for follow-up turns
chat_progressNoChat progress marker from a previous response

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries full disclosure burden. It successfully explains the conversational state management (multi-turn via ai_id), but omits safety-critical details such as rate limits, whether generation is billable, or if content is automatically persisted versus just returned.

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?

Two efficiently constructed sentences. The first front-loads the core purpose, while the second adds the essential multi-turn context. Zero duplication of schema details or redundant filler.

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?

Given the schema's rich parameter documentation (100% coverage) and the tool's moderate complexity, the description covers the essential behavioral context (AI generation, conversation continuity). It effectively compensates for the missing output schema by implying the conversational cycle through parameter descriptions, though it could explicitly mention that the response contains new ai_id/chat_progress values for subsequent calls.

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?

While the schema has 100% description coverage (baseline 3), the description adds valuable semantic context by framing ai_id and chat_progress within the 'multi-turn conversation' workflow, helping the agent understand these parameters form a conversation state protocol.

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 the specific action (Generate), resource (social media content text), and mechanism (using RecurPost AI). It distinguishes from the sibling 'generate_image_with_ai' by explicitly specifying 'text' content.

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 provides implicit usage guidance by explaining that ai_id enables 'multi-turn conversations,' indicating when to populate that parameter. However, it lacks explicit guidance on when to use this tool versus siblings like 'generate_image_with_ai' or prerequisites like authentication.

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

generate_image_with_aiC

Generate an image from a text description using RecurPost AI

ParametersJSON Schema
NameRequiredDescriptionDefault
prompt_textYesDetailed description of the image to generate

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so description carries full disclosure burden. Missing critical behavioral details: output format (URL, base64, file ID?), synchronous vs async behavior, API limits, content policy restrictions, and whether results persist in the RecurPost ecosystem.

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, front-loaded with action verb, no redundant words. Efficiently communicates core purpose, though minimalism contributes to lack of necessary behavioral 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?

For an image generation tool with no output schema and no annotations, the description should disclose return behavior, side effects, and storage implications. Currently insufficient for an agent to predict outcomes, handle errors, or integrate the result into subsequent workflow steps.

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

Parameters3/5

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

Schema coverage is 100% with prompt_text adequately described. Description mentions 'text description' which aligns with the parameter, but adds no additional syntax constraints, prompt engineering guidance, or formatting examples beyond what the schema provides. Baseline 3 appropriate.

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?

Clearly states the verb (Generate), resource (image), and method (using RecurPost AI). Implicitly distinguishes from sibling generate_content_with_ai by specifying 'image' versus generic 'content', though lacks explicit scope constraints or differentiating guidance.

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 provided on when to use this tool versus generate_content_with_ai, prerequisites for image generation, or how to handle results. Fails to mention if generated images are automatically stored in the library or require separate ingestion.

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

history_dataA

Get posting history for a social account (max 100 posts per request)

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial account ID (from social_account_list)
start_dateNoStart date in YYYY-MM-DD HH:MM:SS format
end_dateNoEnd date in YYYY-MM-DD HH:MM:SS format
is_get_video_updatesNoInclude video update metrics (default: true)

TDQS

A3.7/5.0
Behavior3/5

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

No annotations provided, so description carries full disclosure burden. It successfully communicates the 100-post limit constraint (critical for pagination planning). However, lacks safety profile (read-only implied but not stated), error conditions, and return value structure given no output schema exists.

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?

Extremely efficient single sentence of 11 words. Front-loaded with action 'Get posting history', followed by target scope, ending with critical constraint. No repetition, tautology, or filler.

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?

Adequate for a 4-parameter read tool: mentions key constraint (100 posts). However, with no output schema provided, description should ideally characterize return data structure (post objects, metrics, etc.) which is absent. Missing behavioral details like date range defaults when optional params omitted.

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

Parameters3/5

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

Schema description coverage is 100% (all 4 parameters well-documented). Description does not explicitly document parameters but mentions the 100-post constraint which contextualizes the id parameter's purpose. Baseline 3 appropriate since schema does heavy lifting.

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?

Clear specific verb 'Get' + resource 'posting history' + scope 'social account'. The parenthetical '(max 100 posts per request)' clarifies volume constraints. Distinguishes from siblings like post_content (creates), social_account_list (lists accounts), and library_list (lists library items) by targeting retrieved historical post data.

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?

Implied usage is clear (retrieve historical posts), but lacks explicit 'when to use' guidance, prerequisites, or named alternatives. The max 100 posts constraint provides implicit usage guidance regarding pagination needs, preventing a lower score.

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

library_listB

List all content libraries with their IDs

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. Beyond implying read-only via 'List', it omits pagination behavior, caching policies, rate limits, or return structure details needed for safe invocation.

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?

Single sentence with zero waste. Verb, resource, and key output field (IDs) are front-loaded and dense with 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?

Adequate for a zero-parameter tool, but lacks output specification (no output schema exists) or context on what constitutes a 'content library'. Should indicate what data structures are returned beyond just IDs.

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?

Input schema has zero parameters, triggering baseline score of 4 per rubric. Description appropriately makes no parameter claims that would require documentation.

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?

States specific verb 'List' and resource 'content libraries with their IDs'. Distinguishes from sibling 'social_account_list' via resource naming, though could explicitly clarify relationship to 'add_content_in_library'.

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?

Provides no guidance on when to use versus siblings, prerequisites (e.g., authentication requirements), or that results are needed for 'add_content_in_library'. Lacks 'when-not' or alternative suggestions.

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

post_contentB

Post content immediately or schedule it for a future time on a social account

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesSocial account ID (from social_account_list)
messageYesPost content text
schedule_date_timeNoSchedule time in YYYY-MM-DD HH:MM:SS format. Omit for immediate posting.
image_urlNoArray of image URLs to attach
video_urlNoPublic video URL to attach
urlNoWebsite link to include
host_images_on_recurpostNoHost images on RecurPost (default: true)
fb_messageNoFacebook-specific message override
tw_messageNoTwitter/X-specific message override
ln_messageNoLinkedIn-specific message override
in_messageNoInstagram-specific message override
gmb_messageNoGoogle Business Profile-specific message override
pi_messageNoPinterest-specific message override
yt_messageNoYouTube-specific message override
tk_messageNoTikTok-specific message override
th_messageNoThreads-specific message override
bs_messageNoBluesky-specific message override
fb_post_typeNoFacebook post type
in_post_typeNoInstagram post type
in_reel_share_in_feedNoShare Instagram reel in feed
first_commentNoDefault first comment
fb_first_commentNoFacebook first comment
ln_first_commentNoLinkedIn first comment
in_first_commentNoInstagram first comment
ln_documentNoLinkedIn document URL (PPT/PDF/DOCX)
ln_document_titleNoLinkedIn document title
pi_titleNoPinterest pin title
gbp_ctaNoGoogle Business Profile call to action
gbp_cta_urlNoGoogle Business Profile CTA URL
yt_titleNoYouTube video title
yt_categoryNoYouTube video category
yt_privacy_statusNoYouTube privacy status
yt_user_tagsNoYouTube tags
yt_thumbNoYouTube custom thumbnail URL
yt_video_made_for_kidsNoIs the YouTube video made for kids
tk_privacy_statusNoTikTok privacy status
tk_allow_commentsNoAllow TikTok comments
tk_allow_duetNoAllow TikTok duets
tk_allow_stitchesNoAllow TikTok stitches

TDQS

B3.1/5.0
Behavior2/5

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

Zero annotations provided, so description carries full burden of behavioral disclosure. It fails to mention side effects (e.g., content becomes public), reversibility, error conditions, timezone handling for scheduling, or rate limits. 'Post' implies publication but lacks critical safety/behavioral context for a publishing 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 is efficient and front-loaded with no waste words. However, given the tool's high complexity (39 parameters), it may be excessively brief rather than appropriately concise, though technically well-structured.

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?

Inadequate for a 39-parameter multi-platform tool with no output schema. The description omits the extensive platform-specific capabilities (Facebook/Instagram/TikTok/YouTube variations), media handling complexities, and library vs. publishing distinction that are critical for successful invocation.

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

Parameters3/5

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

Schema coverage is 100%, establishing baseline 3. The description hints at the schedule_date_time parameter's optionality via 'immediately or schedule', but adds no syntax details, validation rules, or guidance on platform-specific overrides (fb_message, in_post_type, etc.) beyond what the schema already provides.

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?

States clear verbs (Post, schedule) and resource (content on social account) and distinguishes temporal modes. However, it does not explicitly differentiate from sibling 'add_content_in_library' or mention the multi-platform nature evident in the 39 parameters.

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?

Provides implied usage guidance by contrasting immediate posting versus scheduling. However, it lacks explicit when-not-to-use conditions, prerequisites (e.g., obtaining account ID first), or guidance on choosing between this and the library-related sibling tool.

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

social_account_listB

List all connected social media accounts with their IDs

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full disclosure burden. It adds valuable behavioral context by specifying 'connected' (implying prior authorization is required) and 'with their IDs' (indicating the return payload includes identifiers). However, it lacks details on pagination, error conditions, or output structure that annotations would typically cover.

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, efficient sentence with no redundant words. It front-loads the action verb and immediately follows with the resource and return value details.

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 low complexity (zero parameters, no nested objects) and absence of an output schema, the description adequately covers the basic operation by mentioning the returned IDs. However, it could improve by describing the return structure (array vs object) or what constitutes a 'connected' account state.

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?

With zero parameters, the baseline score is appropriately set to 4. The description does not need to compensate for missing schema documentation since the empty input schema is self-explanatory.

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 provides a clear verb ('List') and resource ('connected social media accounts'), and specifies the key returned field ('IDs'). It implicitly distinguishes from sibling 'connect_social_account_urls' (which adds connections) and 'library_list' (which lists different content), though it could explicitly contrast these.

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 provides no guidance on when to use this tool versus alternatives, prerequisites (e.g., requiring prior authentication), or when not to use it (e.g., if looking for unconnected accounts).

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

user_loginB

Verify RecurPost API credentials

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/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 disclosure burden. It fails to mention what the tool returns (likely auth tokens or session identifiers), failure modes for invalid credentials, rate limiting, or whether this establishes state for subsequent calls. For an authentication-critical tool, this is a significant gap.

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 single sentence is front-loaded with the action verb and contains no redundant or wasteful language. However, given the tool's importance and lack of supporting annotations, the description could be appropriately longer without losing conciseness.

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?

Without an output schema or annotations for an authentication tool, the description should explain the return values (tokens, expiration) and side effects (session establishment). It omits these critical details, leaving agents uncertain about how to handle the output or subsequent authentication state.

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?

With zero parameters in the input schema (schema coverage 100%), the baseline score applies. The description does not need to parameter details, and the schema is trivially complete.

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 provides a clear verb ('Verify') and resource ('RecurPost API credentials'), and combined with the tool name 'user_login', distinguishes this authentication tool from content management siblings like 'add_content_in_library' or 'social_account_list'. However, it lacks specificity about what verification entails (e.g., establishing a session vs. just checking validity).

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 sibling authentication tools like 'connect_social_account_urls', nor does it state that this should be called first before other operations or what prerequisites are needed. The description implies functionality but not usage context.

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. Dates show when Glama detected each change.

  1. 9 tool updatesv1.0.0
    • First observedadd_content_in_library
    • First observedconnect_social_account_urls
    • First observedgenerate_content_with_ai
    • First observedgenerate_image_with_ai
    • First observedhistory_data
    • First observedlibrary_list
    • First observedpost_content
    • First observedsocial_account_list
    • First observeduser_login

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no overlap: library management (add_content_in_library, library_list), social account management (connect_social_account_urls, social_account_list), content generation (generate_content_with_ai, generate_image_with_ai), posting operations (post_content, history_data), and authentication (user_login). The descriptions make it easy to differentiate between similar-sounding tools like post_content and add_content_in_library.

Naming Consistency3/5

The naming follows a mostly readable but mixed convention: snake_case is used consistently (e.g., add_content_in_library, social_account_list), but the patterns vary. Some tools use verb_noun (post_content, user_login), others use noun_verb (library_list, history_data), and some are more descriptive phrases (connect_social_account_urls). This inconsistency doesn't hinder usability but lacks a uniform style.

Tool Count5/5

With 9 tools, the count is well-scoped for a social media management server, covering key areas like content creation, scheduling, account management, and authentication. Each tool serves a specific function without redundancy, making the set comprehensive yet manageable for typical workflows in this domain.

Completeness4/5

The tool surface covers core social media management operations effectively: content generation (text and image), library management, posting (immediate and scheduled), account listing and connection, and authentication. A minor gap is the lack of tools for updating or deleting existing content or libraries, which agents might need to work around, but the essentials for posting and content creation are well-covered.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to publish, schedule, and manage social media posts across X (Twitter), Instagram, and Threads through the Sociona API. Supports immediate posting, scheduling, analytics, and account management with natural language commands.
    6
    38
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to interact with the Ayrshare API to publish social media posts, manage profiles, and handle comments or messages. It supports executing real-time API calls for analytics, media uploads, and automated scheduling across various social platforms.
    18
    25
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to schedule and publish social media posts to platforms like Instagram, TikTok, YouTube, LinkedIn, Facebook, X, Threads, and Pinterest using natural language.
    33
    163
    3
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dinwal/recurpost-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server