Twitter MCP Server
Server Quality Checklist
Latest release: v1.0.2
- Disambiguation5/5
Each tool has a clearly distinct purpose with no overlap: character counting, entity extraction, optimization, and validation. The descriptions specify unique functions, making it easy for an agent to select the right tool without confusion.
Naming Consistency5/5All tool names follow a consistent verb_noun pattern (e.g., count_tweet_characters, extract_entities, optimize_tweet, validate_tweet). This uniformity enhances readability and predictability across the set.
Tool Count4/5With 4 tools, the count is reasonable for a Twitter utility server, though slightly lean. It covers core text processing tasks but could benefit from additional tools like posting or analytics for a more comprehensive scope.
Completeness3/5The tools provide good coverage for tweet analysis and preparation, but there are notable gaps for a Twitter server, such as missing CRUD operations (e.g., create_tweet, get_timeline) or interaction features (e.g., like, retweet). This limits the server's utility for full Twitter workflows.
Average 3.5/5 across 4 of 4 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It successfully specifies which entity types are extracted (URLs, mentions, hashtags), but lacks information about output format, idempotency, or whether the operation is read-only, which would be especially helpful given the absence of an output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficiently structured sentence that front-loads the essential information without redundancy. Every element (platform, action, entity types) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (1 simple parameter) and clear purpose, the description is minimally adequate. However, it lacks return value documentation, which is a notable gap since no output schema exists to explain what the extraction returns (e.g., arrays, positions, formatted strings).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for its single 'text' parameter. The description does not add additional semantic details (e.g., length limits, encoding requirements) beyond what the schema already provides, warranting the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (抽出します/extract), resource (Twitter/Xの投稿/posts), and specific scope (entities: URLs, mentions, hashtags). However, it does not explicitly differentiate from siblings like count_tweet_characters or validate_tweet, which would be needed for a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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. While the extraction purpose is distinct from counting or validating, there is no explicit 'use this when...' or 'instead of X, use this for entity extraction' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the shortening behavior but does not clarify whether the operation preserves meaning, returns multiple options, requires specific permissions, or explain the output format.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single efficient sentence with the main verb front-loaded ('optimizes') and a helpful parenthetical clarifying the specific use case. There is no extraneous text or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no nested objects) and complete schema documentation, the description is minimally adequate. However, it lacks description of the return value since no output schema exists, and could clarify whether the optimization is automatic or provides suggestions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for both parameters (text and maxLength with default), so the schema adequately documents the inputs. The description adds no additional parameter semantics beyond what the schema already provides, which warrants the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool optimizes Twitter/X posts and specifically mentions shortening suggestions for long text, providing a concrete example of the optimization behavior. However, it does not explicitly differentiate from sibling tools like validate_tweet or count_tweet_characters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this tool versus alternatives (count_tweet_characters, validate_tweet). The user must infer that this is for content modification while siblings are for analysis or validation only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It successfully mentions important Twitter-specific handling (URLs and emojis), but lacks disclosure of what the function returns (integer count vs object), whether it has side effects, or rate limiting details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two efficiently structured sentences with zero waste. The first states the core function, while the second provides essential behavioral context (URL/emoji handling) that modifies how the counting works.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no nested objects, the description adequately covers the input requirements. However, without an output schema, the description should ideally mention what value is returned (e.g., character count number), which is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the single 'text' parameter. The description does not add semantic details beyond what the schema already provides ('カウントしたいTwitter/Xの投稿テキスト'), warranting the baseline score of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('カウントします'/counts) with a clear resource ('Twitter/Xの投稿文字数'/Twitter/X post characters). It effectively distinguishes from siblings (extract_entities, optimize_tweet, validate_tweet) by focusing specifically on character counting rather than extraction, optimization, or validation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
While the function is clear from the name and context, there is no explicit guidance on when to use this versus validate_tweet (which likely also checks length constraints). The description relies on implication rather than stating 'use this when you need to check length before posting' or contrasting with alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It adds valuable behavioral context by specifying validation criteria (character limits, URLs, mentions), but lacks critical disclosure about whether this requires Twitter API authentication, consumes rate limits, or what the return format is (boolean vs. detailed error object).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Single, efficient sentence with purpose front-loaded and specific validation domains parenthesized. No redundant words; the 'など' (etc.) appropriately suggests additional validation rules without over-specifying. Every element earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (single string parameter, 100% schema coverage), the description adequately covers the tool's purpose and validation scope. However, without an output schema, it should ideally mention the return format (e.g., validation result structure) to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline is 3. The description implies the text parameter should be tweet content potentially containing URLs/mentions, but does not add syntax requirements, examples, or constraints beyond what the schema already states ('検証したいTwitter/Xの投稿テキスト').
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb (検証/validate) with a clear resource (Twitter/X posts) and explicitly scopes the validation to character limits, URLs, and mentions. This effectively distinguishes it from siblings: count_tweet_characters (counting), extract_entities (extraction), and optimize_tweet (optimization/fixing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by listing validation aspects (character limits, URLs, mentions), suggesting it's for pre-posting validation. However, it lacks explicit when-to-use guidance versus alternatives (e.g., 'use this to check validity before posting; use optimize_tweet to automatically fix issues').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/serima/twitter-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server