Skip to main content
Glama
formegifts

@formegifts/mcp

Official
by formegifts

@formegifts/mcp

MCP server for the forme.gifts wishlist app — manage wishlists and gifts from Claude Code, Claude Desktop, Cursor, and other MCP clients.

Install

Claude Code:

claude mcp add --scope user formegifts -- npx -y @formegifts/mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "formegifts": {
      "command": "npx",
      "args": ["-y", "@formegifts/mcp"]
    }
  }
}

Cursor — add to MCP config:

{
  "mcpServers": {
    "formegifts": {
      "command": "npx",
      "args": ["-y", "@formegifts/mcp"]
    }
  }
}

Any MCP host:

npx -y @formegifts/mcp

Install links for each host will be added in a future release. See forme.gifts/mcp for the latest.

Related MCP server: swagger-petstore-mcp

Authentication

The first time you use any tool, the server will return an unauthenticated error pointing at the auth_start tool. Just ask your MCP host (Claude Code, Claude Desktop, Cursor, …) to sign you in — it will call auth_start, show you a verification URL and short code, and complete the sign-in via auth_poll after you approve in your browser.

If you'd rather sign in from a terminal (handy for CI or pre-warming credentials):

npx @formegifts/mcp auth

If installed globally (npm install -g @formegifts/mcp), use formegifts-mcp directly (forme-mcp is a legacy alias that also works):

formegifts-mcp auth

Source

Source: github.com/formegifts/forme.gifts.mcp. Licensed for use with the forme.gifts service — see LICENSE. Questions or feedback: feedback@forme.gifts

Available Tools

10 tools
auth_pollA

Complete the sign-in flow started by auth_start. Pass the device_code from that response. Returns signed_in (with email) once the user approves, pending if still waiting (call this tool again), or expired (start over with auth_start).

ParametersJSON Schema
NameRequiredDescriptionDefault
device_codeYes

TDQS

A4.8/5.0
Behavior4/5

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

Without annotations, the description carries the behavioral burden. It explains polling behavior, pending state, and expiration. Could be improved by explicitly stating this is a polling endpoint with no side effects, but it is already transparent about the flow.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences cover the tool's purpose, input, possible outputs, and follow-up actions with no redundant information. Every sentence adds value.

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?

Given the tool's simplicity (one parameter, polling), the description fully covers the input, outputs, and the overall flow. It references the sibling `auth_start` tool for context, making it self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Though schema coverage is 0%, the description adds full meaning: 'Pass the `device_code` from that response', specifying both the value's source and required format (minimum length implied). This goes beyond the schema's basic definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Complete the sign-in flow started by `auth_start`', specifying the verb (complete) and resource (sign-in flow). It distinguishes itself from the sibling tool `auth_start` by indicating it is the next step.

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

Usage Guidelines5/5

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

Explicitly instructs to 'Pass the `device_code` from that response' and describes three return states (`signed_in`, `pending`, `expired`) with actions for each (call again or restart). Provides clear when-to-use and next steps.

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

auth_startA

Start the sign-in flow. Returns a verification URL and short user code. Show both to the user, ask them to open the URL and approve, then call auth_poll with the returned device_code.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

In absence of annotations, description discloses key behaviors: returns two items, initiates user-interactive async flow. Could mention timeout or error cases, but overall transparent.

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?

Single sentence that efficiently conveys core action and sequence. Could be slightly more structured, but no wasted words.

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

Completeness4/5

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

For a zero-param auth starter, covers return values and next step. Lacks details on expiration or error conditions, but adequate given simplicity.

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?

No parameters exist; baseline per rules is 4. Description adds no parameter info, but none needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it starts the sign-in flow, returns verification URL and user code. Distinguishes from sibling auth_poll by specifying its output as input for polling.

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

Usage Guidelines5/5

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

Provides explicit sequential instructions: show URL/code, ask user to approve, then call auth_poll with device_code. Guides agent on how to handle the flow.

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

create_giftA

Create a gift inside a wishlist. Requires wishlist_id and name. Optional: description, product_link, price_min, price_max, image_urls (max 5).

ParametersJSON Schema
NameRequiredDescriptionDefault
wishlist_idYes
nameYes
descriptionNo
product_linkNo
price_minNo
price_maxNo
image_urlsNo

TDQS

A3.7/5.0
Behavior3/5

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

Description indicates a write operation (create) but lacks details on side effects, error behavior (e.g., if wishlist_id does not exist), or auth requirements. No annotations are present, so the description carries the full burden but does not fully disclose behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is two sentences with no fluff. First sentence states purpose, second lists required and optional parameters. Every word serves a purpose, and the structure is front-loaded for quick scanning.

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

Completeness3/5

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

While the description covers all parameters and basic purpose, it omits success/error response information and does not explain expected outcomes. Given the absence of an output schema and annotations, the description leaves gaps for an agent to infer important operational details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Description names all 7 parameters and notes that image_urls has a max of 5, adding some context beyond the schema. However, schema coverage is 0% (no property descriptions), and the description does not explain constraints like UUID format for wishlist_id or length limits for name, so added value is marginal.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Create a gift inside a wishlist,' specifying the action (create) and resource (gift). It distinguishes from siblings like create_wishlist and update_gift by using the verb 'create' and the noun 'gift,' making it unambiguous.

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

Usage Guidelines3/5

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

Description lists required parameters (wishlist_id, name) and optional ones, providing basic usage context. However, it does not explicitly state when to use this tool versus alternatives (e.g., update_gift for modifying existing gifts), so guidance is implied but not comprehensive.

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

create_wishlistB

Create a new wishlist for the signed-in user. Returns the created wishlist row.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
descriptionNo
event_dateNo

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided; description only notes return value ('Returns the created wishlist row') without disclosing side effects, error conditions, or constraints like duplicate name handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with key information, no extraneous text.

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

Completeness2/5

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

Lacks details on return format, error handling, and edge cases; no output schema, and sibling tools are not compared, leaving gaps for a creation tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%; description does not explain parameters (name, description, event_date) beyond the schema definitions, missing context on their purpose or interaction.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the action (create), resource (wishlist), and target (signed-in user), distinguishing it from sibling tools like list_wishlists, update_wishlist, etc.

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

Usage Guidelines3/5

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

Implies authentication context ('for the signed-in user') but provides no explicit guidance on when to use vs. alternatives like update_wishlist or delete_wishlist.

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

delete_giftA

Delete a gift by id. Without confirm: true, returns a dry-run summary. Pass confirm: true to actually delete.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
confirmNo

TDQS

A4.5/5.0
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses the dry-run behavior, which is a key safety trait. It doesn't mention irreversibility, but the dry-run mitigates that concern.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the main action, no redundant words. Every sentence serves a purpose.

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 simple delete tool with a safety feature, the description covers the core behavior, parameters, and usage flow. No output schema exists, but the description is sufficient.

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 description compensates by explaining the confirm parameter's role. The id parameter is implied but not elaborated beyond the schema's format. The explanation adds value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description starts with 'Delete a gift by id', providing a specific verb and resource. It clearly distinguishes from siblings like create_gift or delete_wishlist.

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 explains the dry-run vs actual delete behavior via the confirm parameter, guiding safe usage. While it doesn't explicitly state when not to use it, the safety mechanism is well explained.

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

delete_wishlistA

Delete a wishlist by id. Without confirm: true, returns a dry-run summary of what would be deleted. Pass confirm: true to actually delete.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
confirmNo

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, but the description reveals the key behavioral trait: the confirm flag controls whether the operation is a dry-run or actual deletion. This adds important context that an agent needs to avoid accidental deletion.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no redundancy. The first sentence states the purpose, and the second explains the confirm parameter. Both are front-loaded and essential.

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

Completeness4/5

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

With no output schema and no annotations, the description covers the core behavior and parameter semantics. It does not describe the dry-run summary format or error conditions, but for a simple delete tool it is reasonably complete.

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%, but the description explains the role of both parameters: id identifies the wishlist, and confirm switches between dry-run and actual deletion. This adds meaning beyond the schema's structural constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action: delete a wishlist by ID. It distinguishes itself from sibling tools like delete_gift by specifying the resource (wishlist) and explains the dry-run vs actual deletion behavior.

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?

The description explains the two-phase workflow: use without confirm for a dry-run summary, then with confirm to actually delete. This gives clear guidance on when to use each variant, though it does not explicitly mention alternatives.

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

get_wishlistB

Fetch a single wishlist by id or name, including its gifts.

ParametersJSON Schema
NameRequiredDescriptionDefault
idNo
nameNo

TDQS

B3.3/5.0
Behavior2/5

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

No annotations are provided, so the description carries full burden. It discloses that the tool fetches a wishlist with gifts, but omits critical behaviors such as what happens when both id and name are provided (e.g., precedence or error), authentication requirements, or side effects. The description is too minimal for a fetch operation.

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?

The description is a single, front-loaded sentence that efficiently conveys the core purpose. It is concise with no extraneous words, though slightly more brevity could be considered ideal.

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

Completeness2/5

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

Given no output schema, the description partially explains the return ('including its gifts'), but lacks detail on the response structure, error cases, and behavior when no parameters are provided. The tool has two optional parameters with no required fields, so more guidance is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no parameter descriptions). The description adds that the tool can fetch 'by id or name', which provides context beyond the raw schema, but does not clarify whether at least one is required or what happens if both are given. It adds some meaning but is incomplete.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Fetch'), the resource ('wishlist'), and the identifying criteria ('by id or name'). It distinguishes itself from sibling tools like 'list_wishlists' that fetch multiple wishlists, and includes a specific detail ('including its gifts') that adds precision.

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

Usage Guidelines3/5

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

The description implicitly suggests use when fetching a single wishlist by id or name, but does not explicitly state when to use this tool versus alternatives like 'list_wishlists' or how to choose between id and name. No when-not or prerequisites are mentioned.

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

list_wishlistsA

List the signed-in user's wishlists with gift counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It indicates a read-only operation for the signed-in user, but does not disclose potential limitations like pagination, rate limits, or error scenarios that affect agent decision-making.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no wasted words. It efficiently conveys the tool's purpose and key detail.

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

Completeness3/5

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

Given the tool's simplicity (no params, no output schema), the description is adequate but lacks detail on return structure, pagination, or ordering. More information would help an agent fully understand the output.

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?

With zero parameters and 100% schema coverage, the description adds value by specifying the output includes gift counts. It provides enough meaning beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb (List), resource (signed-in user's wishlists), and a key detail (with gift counts). It distinguishes from sibling tools like create_wishlist and get_wishlist by specifying scope and return content.

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?

The description provides clear context for when to use the tool (list signed-in user's wishlists) but does not explicitly state when not to use it or mention alternatives like get_wishlist for a single wishlist.

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

update_giftB

Update a gift's fields by id. At least one field besides id is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
nameNo
descriptionNo
product_linkNo
price_minNo
price_maxNo
image_urlsNo

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the behavioral burden. It indicates mutation ('update') but does not disclose return behavior, side effects on unprovided fields, or required permissions. The description is too brief to fully inform the agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence without any extraneous information. It is front-loaded with the purpose and constraint, maximizing clarity in minimal space.

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

Completeness2/5

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

Given 7 parameters, no output schema, and no annotations, the description is insufficiently complete. It omits details on return values, error conditions, and the impact of updating partial fields. The agent lacks context for robust decision-making.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description adds a crucial semantic rule: at least one field besides id is required. This goes beyond the schema's constraints (which only require id). However, it does not describe individual parameters or formats.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'update' and resource 'gift', specifies the operation is by id, and adds a constraint that at least one non-id field is required. This effectively distinguishes it from sibling tools like create_gift or delete_gift.

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

Usage Guidelines3/5

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

The description implies usage for modifying existing gifts but does not provide explicit when-to-use or when-not-to-use guidance. It lacks alternative suggestions or exclusions, such as noting that a gift must exist first.

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

update_wishlistA

Update a wishlist's name, description, or event_date by id. At least one field besides id is required.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
descriptionNo
event_dateNo
idYes

TDQS

A3.7/5.0
Behavior3/5

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

The description confirms the tool performs a mutation (update) and mandates at least one additional field. However, it lacks behavioral details such as error handling (e.g., non-existent id), return value, or side effects. Since no annotations exist, the description bears full burden but only partially fulfills it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence that efficiently conveys the action, target fields, and the required condition. No superfluous words.

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

Completeness2/5

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

Given the absence of output schema, annotations, and parameter descriptions, the description is insufficient for an agent to fully understand the tool's behavior. Missing details include success/error responses, what happens when a non-existent id is provided, and whether all fields are optional except id.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description should compensate by adding meaning beyond the schema structure. It merely lists the fields (name, description, event_date, id) without providing additional context like format constraints (beyond what schema already specifies) or usage examples.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Update' and resource 'wishlist', and specifies the exact fields that can be updated (name, description, event_date). This distinguishes it from sibling tools like 'update_gift' and 'create_wishlist'.

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?

The description provides a clear constraint 'At least one field besides id is required', which guides the correct invocation. However, it does not explicitly state when to use this tool versus 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv0.3.5
    • First observedauth_poll
    • First observedauth_start
    • First observedcreate_gift
    • First observedcreate_wishlist
    • First observeddelete_gift
    • First observeddelete_wishlist
    • First observedget_wishlist
    • First observedlist_wishlists
    • First observedupdate_gift
    • First observedupdate_wishlist

TDQS

A4/5.0

Scored across 10 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: authentication (auth_start, auth_poll) vs. wishlist CRUD vs. gift CRUD. No two tools overlap in functionality.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case, e.g., create_gift, delete_wishlist. No mixing of conventions.

Tool Count5/5

10 tools is well-scoped for a gift management server, covering authentication, wishlist and gift operations. Not too few or too many.

Completeness4/5

Covers auth, wishlist CRUD, and gift create/update/delete. Missing a dedicated get_gift tool, but get_wishlist includes gifts. Minor gap for completeness.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    OpenAPI-to-MCP example server generated with MCPForge. Demonstrates how REST APIs can be converted into production-ready MCP servers for Claude, Cursor, Windsurf, and other MCP clients.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server wrapping the Cursor CLI agent, enabling Claude Code and other MCP clients to delegate tasks to Cursor's AI agent for file writing, bash commands, and codebase queries.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Cross-platform MCP server providing Claude Code-style plan mode via four tools (enter_plan_mode, get_plan_mode_standards, todo_write, exit_plan_mode) with soft guidance through SKILL.md.
    5
    Apache 2.0