explore_theses
Browse public theses (alias of explore_public). Pass slug to get one, omit to list.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Thesis slug, or empty to list |
Browse public theses (alias of explore_public). Pass slug to get one, omit to list.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Thesis slug, or empty to list |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
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 explains the parameter behavior (slug for single, omit for list) and implies read-only via 'browse,' but it does not disclose response format, pagination, authentication requirements, or any side effects. Since it is a browse tool, the read-only nature is implied, and the alias to explore_public adds context, but the lack of return/error details keeps it from being more transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that immediately states the purpose. Every phrase adds value: 'Browse public theses' defines the action, 'alias of explore_public' provides context, and the next clause explains the two usage modes. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (one optional parameter, no output schema), so the description covers the basic usage. However, it lacks details about what the response contains, pagination, or whether 'public' means anyone can access without auth. Since there is no output schema and no annotations, the description should compensate more to fully prepare an agent for invoking and interpreting results. It is adequate but has clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The parameter schema already describes slug as 'Thesis slug, or empty to list' with 100% coverage. The description adds behavioral nuance ('Pass slug to get one, omit to list') which clarifies the effect of empty vs. populated slug, but it doesn't add new syntax, format, or constraints beyond the schema. This aligns with the baseline of 3 when schema coverage is high.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Browse public theses' with a specific verb and resource. It also distinguishes itself by noting it is an 'alias of explore_public' and explains the two modes: 'Pass slug to get one, omit to list.' This is specific and immediately separates it from siblings like list_theses or get_thesis_context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on how to use the tool: pass a slug for a single thesis or omit to list. It also points to the alias of explore_public, which gives a reference for expected behavior. However, it doesn't explicitly mention when to prefer this over list_theses or explore_public, so it lacks explicit exclusions or alternative names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Many tools have overlapping purposes, such as multiple market query tools (scan_markets, screen_markets, get_market_detail, get_market_diff, get_market_history, inspect_ticker) and legislative tools (legislation, get_legislation, list_legislation, query_gov). Aliases like get_heartbeat_config/get_heartbeat_status and explore_public/explore_theses add further confusion. An agent would struggle to select the correct tool without deeply reading each description.
Most tools follow a verb_noun pattern (get_, list_, create_, update_), but there are notable deviations: 'legislation' lacks the 'get_' prefix, 'stt' and 'tts' are acronyms, 'monitor_the_situation' is a full phrase, and 'x_account/x_news/x_volume' use a non-standard prefix. The overall style is readable, but the mixed conventions reduce predictability.
108 tools is extreme for any server, even one covering prediction markets, trading, portfolio management, forum, skills, and speech. The massive surface area overwhelms agents and makes the server feel more like a platform than a coherent toolkit. This many tools inevitably leads to redundancy and maintenance burden.
The server covers an impressively broad domain: market data, thesis management, intents, strategies, positions, portfolio, forum, skills, legislative and economic queries, and audio/visual processing. Minor gaps exist (e.g., no delete for skills/theses, no update for some portfolio items) but core workflows are well-supported. Overall lifecycle coverage for most entities is strong.