Skip to main content
Glama
jtkehler

crowdsmart-mcp

by jtkehler

list_jams

Read-only

Retrieve active Jams you created, contribute to, or can join publicly, with an optional community filter to narrow results.

Instructions

List the active Jams you can see: those you created, those you take part in, and public ones.

"relation" is "created", "contributing", "public" (you can join) or "invited_pending". Your own drafts are not listed until you launch them.

Args: community_id: Only the Jams of this community, from list_my_communities.

Input Schema

NameRequiredDescriptionDefault
community_idNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

With readOnlyHint=true already declaring the safety profile, the description still adds real behavioral context: the visibility scope of results and the fact that drafts are omitted until launched — a non-obvious filtering rule an agent would otherwise misread as missing data. It doesn't discuss result volume or ordering, but the output schema covers the return shape.

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?

Scope is front-loaded in the first sentence and the draft exclusion is placed immediately after, where it matters most. The relation enumeration is somewhat undirected in its framing (it never says whether relation is input or output), which costs a little clarity for the space it occupies.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-optional-parameter read tool with an output schema and a readOnlyHint, the description supplies everything needed to call it correctly: what appears in the list, what is excluded, and where community_id comes from. Return-value detail is rightly left to the output schema.

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?

Schema coverage is 0%, so the description must carry the single parameter, and it does: community_id is explained as an optional community filter with its upstream source (list_my_communities). Minor deduction because the 'relation' paragraph reads like a filter argument that does not exist in the schema, which could confuse an agent about available inputs.

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?

Specific verb and resource ('List the active Jams') with an explicit scope: created by you, participated in, or public. That scope makes it distinguishable in practice from get_jam (single Jam) and the creation/launch tools, though no sibling is named directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

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

It states inclusion criteria (created/contributing/public) and a key exclusion ('Your own drafts are not listed until you launch them'), and it routes the agent to list_my_communities as the source for community_id. It does not cover when to prefer get_jam or get_jam_results instead, so it stops short of full when/when-not guidance.

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