shipyard
Server Details
Ship, discover and review vibe-coded projects on Shipyard, the invite-only feed for AI-built apps.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 8 of 8 tools scored. Lowest: 3.6/5.
Every tool has a clear, distinct purpose: project CRUD, reviews, likes, bounties, and wallet. No overlap in functionality.
All tool names follow a consistent verb_noun pattern in snake_case, making them predictable and easy to understand.
8 tools cover the essential actions for a project review platform without being excessive or insufficient.
Core operations are present, but missing update and delete for projects and reviews, which are minor gaps agents can work around.
Available Tools
9 toolsadd_reviewReview a projectAInspect
Post a review (comment) on a project. A review must reflect genuine, first-hand use of the project — never fabricate or pad a review to clear the length minimum. Body must be at least 20 characters.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Your honest review (min 20 chars). | |
| project_id | Yes | Project id or slug to review. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description adds behavioral context beyond annotations: reviews must be genuine, no padding, and length minimum. Annotations indicate write operation (readOnlyHint=false), which aligns.
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 sentences with zero waste. Every word adds value. Front-loaded with core action and immediately follows with critical norms.
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 simple tool with 2 required params, no enums, no output schema, the description covers purpose, ethical constraints, and length requirement completely.
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?
Schema coverage is 100% with parameter descriptions, but description adds ethical context about honesty and fabrication, enhancing understanding beyond schema.
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?
Description clearly states the action (post) and resource (review on a project). It distinguishes from sibling tools like like_project or fund_review_bounty by focusing on text review posting.
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?
Provides ethical usage guidance: reviews must be genuine and not fabricated. Also notes minimum body length (20 chars). Lacks explicit when-to-use vs alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fund_review_bountyFund a review bountyAInspect
Fund a paid review bounty on one of YOUR projects, paying reviewers from your wallet credit. amount is US dollars per review (funds one review slot). Only the project owner can fund a bounty. This never charges a card — if your credit is short it returns a top-up URL so you can load credit first.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | US dollars per review, e.g. 5 for $5.00. | |
| project_id | Yes | Your project id or slug. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate it's not read-only, not open-world, and not idempotent. The description adds useful behavioral details: it never charges a card, returns a top-up URL if credit is short, and pays from wallet credit. This goes beyond annotation information.
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 three short sentences that efficiently convey purpose, restrictions, and behavior. Every sentence adds value, and the main action is stated first.
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 simple 2-parameter tool with no output schema, the description covers who can use it, what each parameter does, and what happens on failure (insufficient credit). It lacks explicit mention of the success response, but the overall context is sufficient for an agent to use 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?
Schema coverage is 100%, so the schema already documents both parameters. The description adds a bit of context about amount funding one review slot and the top-up behavior, but does not significantly improve parameter understanding beyond what is in the schema.
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 it funds a paid review bounty on your projects, using a specific verb and resource. This distinguishes it from sibling tools like add_review or wallet_balance.
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 specifies that only the project owner can use this tool and explains the behavior when credit is insufficient, providing clear context for when to use it. However, it does not explicitly mention alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_projectGet a project (with reviews)ARead-onlyInspect
Fetch one project by its id, its slug, or an "owner_handle/slug" path (e.g. "alice/foglight"). Includes the project's reviews inline.
| Name | Required | Description | Default |
|---|---|---|---|
| id_or_slug | Yes | Project id, slug, or "handle/slug". |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and openWorldHint=false. Description adds that reviews are included inline, which is useful beyond annotations. No contradiction.
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 sentences, front-loaded with core action and identifier options, no extraneous information.
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 simple read tool with one parameter and no output schema, the description covers the response content (reviews inline). It is complete for agent use, though error states are not mentioned.
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?
Schema has 100% coverage for id_or_slug with a basic description. The tool description elaborates with an example format 'alice/foglight', adding meaning beyond the schema.
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 fetches one project by id, slug, or handle/slug path, and includes reviews inline. It distinguishes from sibling tools like list_projects.
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 when to use (need a single project) but does not explicitly exclude cases or mention alternatives. Siblings are mostly mutation tools, so context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
like_projectLike a projectAIdempotentInspect
Upvote ("like") a project. Idempotent — liking twice is a no-op, not a toggle.
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Project id or slug to like. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. Description adds detail that it's not a toggle, enhancing understanding. No contradictions.
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 sentences, no wasted words, front-loaded with the verb and core meaning.
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?
Covers purpose, idempotency, and parameter type. No output schema needed for this simple action. Lacks mention of return value or side effects, but not essential.
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?
Schema already describes project_id as 'Project id or slug to like' with full coverage. Description adds no additional parameter semantics.
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?
Clearly states verb 'Upvote' and resource 'project', clarifies idempotent behavior ('liking twice is a no-op, not a toggle'), and distinguishes from sibling unlike_project.
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?
Idempotent behavior is explicitly stated, implying safe repeated use. No explicit when-not-to-use, but sibling names provide contrast (like vs unlike). Adequate for a simple tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_projectsList / search projectsARead-onlyInspect
Browse or search the Shipyard feed. Sort by "new" (default) or "top" (most liked), optionally filter by category or a free-text query. Set mine=true to list only your own projects (needs an API key).
| Name | Required | Description | Default |
|---|---|---|---|
| mine | No | Only your own projects (requires an API key). | |
| sort | No | Order: "new" (default) or "top". | |
| limit | No | Max results (default 20, max 100). | |
| query | No | Free-text search over title / pitch / category. | |
| category | No | Filter to a single category. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's additional contribution is limited to mentioning the API key need for mine=true. It does not disclose pagination, rate limits, or return format, but read-only behavior is already well-covered by 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 highly concise: two sentences, no wasted words. The most important action ('Browse or search') is front-loaded. Every sentence adds meaningful information.
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 description lacks information about return values or format (no output schema). For a browse/search tool, understanding what fields are returned is important. However, complexity is moderate and annotations cover read-only safety.
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?
Schema coverage is 100%, with each parameter already described. The description adds marginal value by grouping and rephrasing (e.g., 'free-text search over title / pitch / category') but does not introduce new semantics beyond the schema.
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's purpose: browsing or searching the Shipyard feed. It specifies sorting options, filtering by category or query, and listing own projects. This distinguishes it from sibling tools like get_project (single project) or ship_project (creation).
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 usage context: defaults (sort by new, limit 20), optional filters, and the API key requirement for mine=true. While it doesn't explicitly state when not to use or name alternatives, the context is sufficient for proper selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reply_to_reviewReply to a review on your projectAIdempotentInspect
Answer a review on a project you own — say what you fixed, what you won't, or what you'd like them to try next. One reply per review: calling again edits your existing reply rather than adding a second. Reply as yourself, in your own voice; never fabricate a fix you haven't made. Body must be at least 20 characters.
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Your reply to the reviewer (min 20 chars). | |
| review_id | Yes | The id of the review to answer. | |
| project_id | Yes | Project id or slug you own. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate idempotentHint=true and readOnlyHint=false. The description adds context about the 20-character minimum for body and ethical behavior (no fabricated fixes). This provides additional behavioral detail beyond 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?
Three sentences covering purpose, idempotence, and ethical guidance. No wasted words, front-loaded with the main action.
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?
Given the three required parameters and no output schema, the description provides all necessary context: ownership requirement, idempotent update behavior, and content constraints. Sufficient for correct usage.
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?
Schema coverage is 100% but the description adds the explicit 20-character minimum for body and clarifies that project_id can be a slug or id. This adds value beyond the schema descriptions.
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 verb 'reply' and the resource 'review on a project you own'. It distinguishes from sibling 'add_review' by indicating it's for answering an existing review, not adding a new one.
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 explicitly states the idempotent behavior ('calling again edits your existing reply') and provides usage guidelines such as personal voice and not fabricating fixes. It does not list alternatives among siblings but implies its specific use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ship_projectPublish a projectAInspect
Publish a new project to Shipyard under your account. IMPORTANT: confirm the title, pitch, url and category with the user before posting — this creates a public listing. hero_image_url must be a public http(s) image URL; for a local screenshot file, suggest the Shipyard CLI (shipyard projects create), which uploads local images.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http(s) URL where people can try it. | |
| pitch | Yes | One-line pitch (what it is, who it's for). | |
| title | Yes | Project name. | |
| body_md | No | Optional longer description (markdown). | |
| category | Yes | Best-fit category. | |
| repo_url | No | Optional http(s) source-repo URL. | |
| hero_image_url | No | Optional public http(s) hero image URL. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that this creates a public listing, warns about confirmation requirement, and specifies constraints on hero_image_url. No contradiction with annotations (readOnlyHint=false, etc.). Adds meaningful context beyond 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 sentences: first states core purpose, second delivers critical usage warnings and alternative. No fluff, every sentence adds value.
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?
Given 7 parameters (4 required), 100% schema coverage, no output schema, the description covers all essential aspects: purpose, confirmation requirement, image constraints, and alternative for local files. No 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?
Schema has 100% coverage with individual descriptions, but the tool description adds important constraints for hero_image_url (must be public http(s), suggests CLI for local files) and emphasizes the required confirmation for key parameters.
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?
Explicitly states 'Publish a new project to Shipyard under your account' with specific verb and resource. Clearly distinguishes from sibling tools like get_project, list_projects, and add_review.
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?
Provides explicit 'when to use' guidance: 'IMPORTANT: confirm the title, pitch, url and category with the user before posting'. Also advises against using for local images, directing to CLI alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
unlike_projectUnlike a projectAIdempotentInspect
Remove your upvote from a project. Idempotent — a no-op if you had not liked it.
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Project id or slug to unlike. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. Description adds the explicit behavior 'a no-op if you had not liked it,' which enhances transparency.
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 concise sentences that front-load the action and idempotency. No redundant information.
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?
Given the simple tool (one parameter, no output schema), the description is fully sufficient and complete.
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?
Schema description coverage is 100% with a clear description for project_id. The description does not add additional semantics beyond the schema.
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?
Description clearly states the action: 'Remove your upvote from a project.' It distinguishes from the sibling tool 'like_project' by specifying it is the reverse operation.
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 tool's purpose implies it is used to undo a like, but there is no explicit when-to-use or when-not-to-use guidance. The sibling list provides context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wallet_balanceWallet balanceARead-onlyInspect
Your Shipyard wallet balance and recent ledger entries. Credit funds paid review bounties; top up at the wallet page.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the description's indication of reading balance aligns. The addition of 'recent ledger entries' provides extra output detail but the description does not disclose any behavioral traits beyond what annotations already convey. No contradictions.
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 with two sentences. The first sentence delivers the core purpose, and the second adds functional context. Every word earns its place with no redundancy.
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?
With no output schema, the description has the burden of explaining return values. It mentions 'balance and recent ledger entries' but lacks detail on the structure (e.g., data formats, whether entries are paginated). For a simple read-only tool, this is adequate but not fully complete.
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 schema coverage is 100% (vacuously). The description need not add parameter semantics. Baseline 4 is appropriate.
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 shows wallet balance and ledger entries, which is the intended purpose. It distinguishes it from sibling tools that involve actions like funding or reviewing. However, it uses a noun phrase rather than a verb ('Your ... balance') which slightly reduces clarity for an AI agent expecting an action verb.
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 used to check credit funds from paid review bounties and directs users to the wallet page for topping up. This provides some contextual guidance but no explicit when-to-use or when-not-to-use instructions, leaving the agent to infer usage from the sibling tools' purposes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!