An MCP server that provides tools for interacting with Twitter/X API, including posting tweets and performing other Twitter operations
This server has critical definition quality issues across both tools. The 'addTwoNumbers' tool is toy functionality unrelated to the server's stated Twitter X purpose. The 'createPost' tool lacks idempotency documentation despite being a destructive operation. No output schemas are documented. Parameter naming lacks description suffixes (should be 'status_text' or similar with constraints). Overall, this is below the median community server quality baseline (~45-55).
Add two numbers
Create a post on X formally known as Twitter
Tool description 'Add two numbers' is 16 characters, below 20-char hard minimum.
Parameter descriptions are null/missing for ALL parameters (a, b in addTwoNumbers; status in createPost).
No output schema documented. LLMs cannot plan downstream tool calls or extract fields without knowing what the response contains. Both tools return content arrays with text, but this is inferred from code, not declared.
createPost is a destructive operation (writes to Twitter API) but lacks idempotency guarantee, dry-run option, or confirmation step.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 35 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 35 | - | v1 |
Error handling is absent. If createPost fails (API error, auth failure, network timeout), no recovery guidance is provided.
Twitter API credentials (appKey, appSecret, accessToken, accessSecret) are injected server-side via dotenv, which is correct. However, no audit logging or permission gating is present, cannot trace which calls accessed which permissions.
addTwoNumbers is toy functionality unrelated to Twitter X API. Reduces clarity of the tool set and violates single-responsibility principle (tool:composition). This tool should be removed entirely.
'createPost' description says 'Create a post on X formally known as Twitter ' (note trailing space). Descriptions should be clear and concise. Also missing details on what 'status' parameter accepts (plain text, markdown, URLs, media?).
'status' parameter has no constraints, format, or length description. Twitter API has max post length (280 chars for text). Without documenting this, LLMs may pass oversized content.