MCP server for postidentity - Generate AI posts from any AI assistant
PostIdentity MCP server has strong naming conventions with clear action verbs and well-structured schemas. All 10 tools are explicitly registered with complete JSON Schema definitions and descriptions. Tool names follow verb_noun patterns (list_identities, generate_post, create_identity, etc.). Descriptions are generally informative (120-350 chars typical range), explaining what each tool does and when to use it. Parameters have types and descriptions. However, several gaps prevent a higher score: (1) Output schemas are NOT documented, tools return results but the response structure is not visible in the code provided; (2) Error handling is minimal, no documented recovery paths, categorization, or actionable error messages; (3) Some parameter descriptions lack format/range constraints (e.g., 'thought_content' has no length guidance, 'post_count' accepts string 'auto' but this is unusual and underdocumented); (4) The 'generate_post' tool has complex conditional logic (refinement_type determines which other params are required) but dependencies are only partially documented in descriptions; (5) No evidence of pagination for list tools or result limiting guidance.
Archive an identity (can be restored later from Settings)
Create a new identity from a description and example posts
Generate a social media post as one of your identities. Costs 1 credit per generation or refinement.
Generate a reply to an existing post in your identity's voice. Perfect for engaging with other users' content while maintaining your authentic style. Costs 1 credit.
Generate a cohesive thread (multiple connected posts) from one thought. Perfect for breaking down complex ideas, stories, or long-form content like YouTube transcripts into a series of posts. Costs 1 credit.
Check your current credit balance. Each post generation costs 1 credit.
Output schemas not documented. Tools have descriptions and input schemas but no visible return type definitions. This forces LLMs to infer output structure, risking parsing errors and wasted tokens on discovery.
generate_post tool has conditional parameter logic (refinement_type determines which params are required) but dependencies are scattered across descriptions rather than clearly stated as mutual exclusivity constraints. An LLM may pass both session_id and style_adjustment, or omit required fields.
No documented error handling or recovery guidance. If API calls fail (invalid identity_id, exhausted credits, malformed thought_content), no tool describes what error messages mean or how the agent should recover.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 63 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 37 | - | v1 |
Get your referral statistics including code, total referrals, and credits earned
Get a list of your identities/personas from PostIdentity
Browse marketplace identity templates with optional category filter
List your generated posts with optional filtering by identity
list_posts and list_identities lack explicit pagination / result limiting guidance. No documented max returned items, no mention of limit defaults, no next_cursor or total_count fields described.
Some parameter descriptions lack actionable constraints. 'thought_content' is described as 'The content/thought you want to transform' but has no guidance on length limits, format, or what constitutes invalid input. create_identity examples requires 'minimum 3' but no max is documented.
generate_thread accepts 'post_count' as either number or string 'auto', a type union that is unusual and not well-documented. The description says 'a number between 3-10' but then allows 'auto', risking LLM confusion about valid input types.
Tools accept both UUID and human-readable names (e.g., 'Tech Blogger') for identity_id, but this overloaded parameter design is not explicitly noted as a feature in descriptions. An LLM may not realize both forms are valid and default to IDs.