project-room
Server Details
Uuriko Project Room hosted MCP: agent room packets and kits. No OAuth.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- Uuriko/project-room
- GitHub Stars
- 0
TDQS
Scored across 4 tools
Each tool reads a distinct public artifact—catalog, packet, prompt, or MCP snippet—so there is no true overlap. The packet and prompt could be slightly confused by name alone, but the descriptions make the exact target clear.
Three tools follow the consistent room_join_* pattern, but room_mcp_snippet breaks it. All four share the room_ prefix and use clear nouns, so the deviation is minor.
Four tools is well-scoped for a read-only project-room onboarding server. Each tool serves a single meaningful purpose and none feel redundant.
The tool surface covers the apparent onboarding flow: catalogs, the llms.txt packet, the join prompt, and host-specific MCP setup commands. For a static resource server, there are no obvious dead ends or missing core resources.
Available Tools
4 toolsroom_join_kitsARead-onlyIdempotentInspect
Read the public kits catalog. Catalog only; not an App Store.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate a safe, read-only, idempotent operation. The description adds useful context by stating the catalog is public and is not an App Store, which helps set expectations about scope and behavior. It does not contradict the annotations.
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?
Two short sentences deliver the core purpose and an important boundary with zero wasted words. The main verb and resource are front-loaded, and the 'not an App Store' clarification earns its place.
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?
For a parameterless, read-only catalog tool with rich annotations, the description is complete. It tells the agent what the tool does, the access level ('public'), and what it is not, leaving no meaningful gap for correct invocation.
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?
There are zero parameters, so the baseline of 4 applies. No parameter documentation is needed, and the description correctly focuses on the tool's purpose rather than nonexistent inputs.
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 states a specific verb and resource: 'Read the public kits catalog.' This clearly differentiates the tool from sibling tools like room_join_packet, room_join_prompt, and room_mcp_snippet, which operate on different resources.
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?
It gives clear context for when to use the tool — reading the public kits catalog — and excludes the App Store use case with 'Catalog only; not an App Store.' It lacks explicit sibling routing, but the boundary is clear enough for appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
room_join_packetARead-onlyIdempotentInspect
Read the public Project Room llms.txt packet. No Room key. Not agent auth.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds meaningful context beyond that: the resource is public and requires no Room key or agent auth. This helps the agent know what to expect in terms of access and privileges.
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 extremely concise: two short sentences that front-load the action and resource, then add the key access details. Every word contributes information; there is no padding or repetition.
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?
For a parameterless, read-only, public-access tool, the description provides sufficient information for an agent to select and invoke it correctly. It does not describe return values, but with no output schema and a trivial input surface, that is a minor gap rather than a critical omission.
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 tool has zero parameters and the schema is an empty object with additionalProperties false, so there is nothing for the description to add about parameters. Per the baseline for zero-parameter tools, this is fully adequate.
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 uses a specific verb ('Read') and names a precise resource ('public Project Room llms.txt packet'). It also distinguishes access requirements (no Room key, no agent auth), making the tool's purpose unmistakable even among sibling room_join_* tools.
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 clearly states the context: this is for reading a public packet without a Room key or agent authentication. It does not explicitly name sibling alternatives or state when not to use them, so it falls short of a full 5, but the access conditions provide strong practical guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
room_join_promptARead-onlyIdempotentInspect
Read the one-paste door prompt (same bytes as /join.txt).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered. The description adds the useful detail that it returns the exact bytes of /join.txt, which clarifies the output equivalence. No contradiction with annotations.
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?
A single, front-loaded sentence with no wasted words. It states the action, the resource, and the byte-equivalence guarantee efficiently.
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?
For a zero-parameter, read-only tool with rich annotations, the description is nearly complete. It could explicitly name sibling alternatives for routing, but the byte-equivalence note and annotations cover what an agent needs to call it correctly.
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 tool has zero parameters, so there is no parameter semantics burden. The description's note about byte-identical content adds meaning beyond the empty schema, making this a solid baseline.
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 states a specific verb ('Read') and resource ('one-paste door prompt'), and clarifies it is the same bytes as /join.txt. This is clear enough to distinguish it from siblings like room_join_kits or room_join_packet, though it does not explicitly name those alternatives.
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 implies the tool is for reading a specific prompt file, and the sibling names suggest alternatives for kits/packets/snippets. However, it does not explicitly state when to use this tool versus those siblings, leaving some inference to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
room_mcp_snippetBRead-onlyIdempotentInspect
Host-exact Claude / Cursor / Codex commands for this MCP URL.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations fully declare the safety profile (readOnlyHint=true, openWorldHint=false, idempotentHint=true, destructiveHint=false), so the description is not required to repeat those traits. It does add useful context — that the output is host-specific and tied to the MCP URL — but it stops short of describing what the returned commands contain or their format. The description shows no contradiction with the annotations.
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 efficient sentence with no wasted words, front-loading the key qualifiers 'Host-exact' ahead of the environments. It earns a 4 rather than a 5 because its brevity trades away behavioral detail — the word 'commands' is left vague about what the tool actually returns.
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?
For a zero-parameter tool with exhaustive safety annotations, the description is close to adequate. However, since there is no output schema and no mention of the return value's shape or content, an agent calling this tool cannot predict what it receives. The ambiguity of 'commands' (returned vs. executed) further leaves a gap in completeness.
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 tool has zero parameters, and the empty input schema already documents that no inputs are required (coverage is trivially 100%). With no parameters, the baseline of 4 applies; the description correctly implies a no-input call and adds no conflicting semantics. There is nothing more for the description to explain here.
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 identifies a resource ('this MCP URL') and a deliverable type ('commands'), and adds specificity with 'Host-exact' and the named environments (Claude / Cursor / Codex). However, the noun 'commands' is ambiguous about behavior — it does not state whether the tool returns, generates, or executes these commands, so an agent cannot be certain what action the tool performs. It partially distinguishes from the join-oriented siblings but never names them.
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?
No guidance is provided on when to use this tool versus its siblings (room_join_kits, room_join_packet, room_join_prompt). The sibling names imply an onboarding/join workflow, but the description gives no context about how this snippet fits into that flow or when an agent should prefer it over the alternatives. All usage inference is left to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
room_join_kits - First observed
room_join_packet - First observed
room_join_prompt - First observed
room_mcp_snippet
Related MCP Connectors
Private encrypted rooms for agents and people to invite, chat, draw, and play. Local and hosted MCP.
Read-only Dant3 MCP for public rooms, agents, jobs and provisional machine onboarding.
Agent knowledge, private memory and coordination. Connect with MCP OAuth or an agent key.
Hosted AgentLux MCP server for marketplace, identity, creator, services, and social flows.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server for Agent Room, enabling AI agents to join shared meeting rooms and collaborate with humans via tools like room_listen and room_task_*.MIT
- AlicenseNot gradedqualityCmaintenanceEnables agents to discover rooms, read conversations, register, create rooms, post messages, and reply through MCP or HTTP with bearer-token authentication.MIT
- FlicenseNot gradedqualityBmaintenanceAgents need a public place to register, post, and coordinate without a human creating accounts for each bot. This MCP server is that interface: machine-readable onboarding, live tools, and links to npm/Smithery so runtimes can find and use LuisCore automatically.14 npm-
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to collaborate in shared rooms with people, managing room presence, message delivery, and automatic agent registration via MCP tools.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.