arena-mcp
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool targets a distinct resource: search results, channel metadata, channel contents, individual blocks, and a user's channels. There is no meaningful overlap, and the intended workflow (search -> channel -> contents -> block) is clear.
Naming Consistency5/5All tool names follow the same arena_ + noun pattern with snake_case and the server prefix applied uniformly. Even though search is more action-like, the overall naming is predictable and easy to extrapolate.
Tool Count5/5Five tools is a well-scoped set for a read-only Are.na browsing server. Each tool covers a distinct primary object or action, and the count is neither bloated nor too thin for the apparent purpose.
Completeness4/5The set covers the core read-only workflows: search, inspect channels, page through contents, view block details, and list a user's channels. Minor gaps exist, such as direct user profile metadata or broader discovery feeds, but they do not break the main usage flow.
Average 3.3/5 across 5 of 5 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 4 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
This repository is licensed under MIT License.
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
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description carries full behavioral responsibility. It implies a read operation ('metadata') but doesn't explicitly state read-only, safety, or side effects. It also doesn't disclose error behavior or output format. The description adds minimal behavioral context beyond the basic purpose.
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, concise sentence that front-loads the key action ('Channel metadata'). No unnecessary words or filler. It's appropriately sized for a simple tool.
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 metadata retrieval with no output schema, the description doesn't specify the return format (e.g., a single JSON object) or behavior for invalid ids. It's minimal but may be sufficient for an agent to call correctly. However, with no annotations or output schema, it could offer more clarity on the response shape.
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 schema fully documents the single 'id' parameter with a clear description of slug or numeric id (100% coverage). The tool description adds no additional meaning beyond the schema. Since the schema already covers it, the baseline of 3 is appropriate.
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 states the tool retrieves channel metadata by slug or id, including the description. It clearly names the resource ('channel metadata') and the lookup method, distinguishing it from sibling tools like arena_channel_contents (which likely fetches contents). However, the verb is implicit ('metadata' implies retrieval) rather than explicit like 'get', so it doesn't fully achieve 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?
No guidance is provided on when to use this tool versus alternatives. There's no mention that this is for metadata only, not contents, or any conditions for preferring a slug vs numeric id. The description doesn't reference sibling tools or give exclusions, leaving the agent to infer usage.
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 present, the description carries the behavioral transparency burden. It usefully discloses that no token is needed and that results are compact objects containing an image URL and an Are.na link, but it omits other behavioral details such as pagination behavior, response limits, or type-specific result differences.
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 three short sentences, front-loaded with the tool's purpose, followed by output shape and auth requirement. Every sentence earns its place and there is no fluff or repetition.
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 simple search tool the description covers the main idea, but with no output schema and no annotations it stops short of full completeness. It omits pagination semantics, exact fields of the returned objects, and any error or empty-result behavior, which an agent would need for robust usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes 'query' and 'type' with helpful detail, but schema coverage is only 50%. The description adds no information about the pagination parameters 'per' and 'page', which remain undocumented in both the schema and the description, so the agent gets no semantic guidance for those parameters.
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 names a specific action ('Search') and a clear resource ('Are.na'), and scopes it to visual references: channels, image blocks, and users. It distinguishes itself from the sibling tools by presenting a broad search over those three categories, though it does not explicitly name any sibling or contrast itself with direct-fetch tools.
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?
No explicit guidance on when to use this tool versus alternatives such as arena_block, arena_channel, or arena_channel_contents. The phrase 'Search Are.na' implies a query-driven use case, and 'Works without a token' gives some context, but there are no when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it only describes the listing action and gives no details about pagination, ordering, visibility, or response shape. There is no contradiction, but behavior beyond the basic operation is undisclosed.
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?
One sentence with no filler; the core operation and purpose are front-loaded before the dash. Every phrase earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema or annotations, and the description omits pagination behavior and return context, so an agent lacks information for a complete call. For a three-parameter tool with two undocumented pagination options, this is insufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (id has a description); the description repeats that id accepts a slug or id but does not add meaning beyond the schema. It gives no guidance on 'per' or 'page', which remain undocumented.
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 states a specific verb ('List') and resource ('a specific author's channels') and identifies the input method ('by slug or id'), making the tool's function clear. It does not explicitly name sibling tools, but the resource scope distinguishes it from arena_channel and arena_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to dig through their collections' gives a clear intended use case for choosing this tool. It does not name exclusions or alternatives, but the context is enough to route an agent to this list endpoint.
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, the description carries the behavioral burden. It discloses that results are paginated and that blocks include image URLs, which is useful context. However, it does not describe the full response shape, ordering, or any access considerations, leaving meaningful gaps.
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 two short sentences with no filler. It front-loads the core purpose, mentions pagination, and gives the primary usage context, making efficient use of the space.
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 simple paginated list-by-id tool, the description gives enough to understand the basic operation and how it fits after arena_search. However, with no output schema and no annotation support, the agent is left without a clear picture of the return structure and full pagination behavior, so completeness is only moderate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, and the description adds no parameter-level meaning. The id parameter is documented in the schema as 'channel slug or id', but per and page have no explanation in either place, and the description's mention of pagination does not compensate for the missing semantics.
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 identifies the resource as blocks inside a channel, with image URLs, and contrasts it with the search step (arena_search). It lacks an explicit verb like 'list' or 'retrieve', but the meaning is still unambiguous and distinguishable from the sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit guidance to use this tool after arena_search to expand a collection, which helps an agent know when it fits in a workflow. It does not state when not to use it or mention the other sibling alternatives, but the primary usage context is clear.
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. It does convey a read-only lookup and discloses that the result includes the block's details plus its channels. It does not mention error behavior, authentication needs, or what happens when a block id is invalid or has no channels.
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, front-loaded sentence with no wasted words. It states the resource, the lookup mechanism, content types, and the additional channels payload efficiently.
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?
For a one-parameter tool with no output schema, the description adequately explains what the response will contain: block details and associated channels. It could mention auth or error handling, but the low complexity and clear return scope keep it reasonably 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?
Schema coverage is 100% and the only parameter, id, is already described as a numeric block id. The description adds little beyond restating that lookup is by id, so the schema does the necessary work.
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 names the specific resource (a single block), distinguishes among content types (image/link/text), identifies the lookup key (by id), and notes the extra output (channels). It is easily differentiated from siblings like arena_channel_contents or arena_channel, which target channel-level 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/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by 'by id': an agent should call this when it has a specific block id and wants that block's details. However, there is no explicit guidance about when to prefer this over arena_channel_contents or arena_search, and no exclusions are stated.
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/vortep-dev/arena-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server