Skip to main content
Glama

Server Details

Manage Loops contacts, mailing lists, and transactional/event emails.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
m190/usefulapi-mcp
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsB

Average 3.7/5 across 10 of 10 tools scored. Lowest: 2.7/5.

Server CoherenceA
Disambiguation5/5

Each tool has a distinct purpose and target resource (contacts, properties, lists, events, transactional emails, API key). No overlap or ambiguity in descriptions.

Naming Consistency5/5

All tools follow a consistent 'loops_verb_noun' pattern in snake_case. Verbs are descriptive and nouns match the resource.

Tool Count5/5

10 tools is well-scoped for the domain, covering contacts, properties, lists, events, transactional emails, and an API test. Neither sparse nor overloaded.

Completeness4/5

Covers core contact CRUD, property creation, listing, and sending capabilities. Minor gap: no update/delete for contact properties, but the surface handles primary workflows.

Available Tools

10 tools
loops_create_contactCreate a contactB
Destructive
Inspect

Creates a contact in Loops (additive). Loops API: POST /v1/contacts/create.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesContact email address (required).
sourceNoSource label for where the contact came from.
userIdNoYour app's user id for this contact.
lastNameNoLast name.
firstNameNoFirst name.
userGroupNoUser group segment name.
propertiesNoArbitrary custom contact properties (string/number/boolean); merged into the request body.
subscribedNoWhether the contact is subscribed to email.
mailingListsNoMap of mailing-list id -> subscribed boolean.
Behavior3/5

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

Annotations already indicate destructiveHint=true. Description adds 'additive' but does not disclose what happens on duplicate emails, idempotency, or API behavior beyond creation.

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?

Single sentence plus API endpoint. Front-loaded with key action. No wasted 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?

No output schema and description does not mention return value, error handling, or idempotency. For a tool with 9 parameters, more behavioral context 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 100% with clear descriptions for each parameter. Description adds no extra meaning beyond the schema 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?

Description clearly states verb 'creates', resource 'contact', and adds '(additive)' to distinguish from update operations. Sibling tools include loops_update_contact, making distinction clear.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives like loops_update_contact. No mention of prerequisites or common scenarios.

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

loops_create_contact_propertyCreate a contact propertyC
Destructive
Inspect

Creates a custom contact property/field (additive schema change). Loops API: POST /v1/contacts/properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName of the custom property to create (required).
typeYesData type of the property (required).
Behavior1/5

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

The description claims an 'additive schema change' (non-destructive), but annotations declare destructiveHint=true, creating a direct contradiction. Beyond this, no behavioral details like permissions, side effects, or reversibility are disclosed.

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 concise sentence plus an API endpoint reference, with no unnecessary words. However, it could provide more detail without becoming verbose.

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?

For a tool marked as destructive with no output schema, the description should explain what happens after creation, potential impacts, or reversibility. It lacks completeness, especially given the annotation contradiction and the need for caution.

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 100%, so the schema already describes both parameters (name and type) adequately. The description adds no extra meaning beyond the schema, meeting the baseline expectation.

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?

The description clearly states it creates a custom contact property/field, using the verb 'creates' and resource 'custom contact property/field'. It also specifies it's an additive schema change. While it doesn't explicitly differentiate from sibling tools, the purpose is self-evident from the name and context.

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

Usage Guidelines2/5

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 alternatives, such as when to create a property versus list or update existing ones. There are no prerequisites or usage conditions mentioned.

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

loops_delete_contactDelete a contactA
Destructive
Inspect

Deletes a contact from Loops. Destructive. Supply email OR userId. Loops API: POST /v1/contacts/delete.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoEmail of the contact to delete.
userIdNouserId of the contact to delete.
Behavior4/5

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

Annotations already include destructiveHint: true, so the description's 'Destructive' is redundant. However, it adds the specific API endpoint and clarifies the need to supply exactly one of email or userId, which goes beyond the schema's optional parameters. This provides useful behavioral context.

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 extremely concise (two sentences) with no wasted words. It front-loads the core purpose and then adds critical usage details. Every sentence earns its place.

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 simple delete operation with no output schema, the description is adequate. It covers the action, destructive nature, required input (one of two), and the API endpoint. It could mention what happens on success/failure, but the annotations and simplicity make this 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 description coverage is 100%, with descriptions for both email and userId. The description adds value by stating 'Supply email OR userId', clarifying that they are alternatives and that one must be provided. This enhances understanding beyond the raw 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 'Deletes' and the resource 'contact from Loops'. It is distinct from sibling tools, as none of them are delete operations. The addition of 'Destructive' and the API endpoint further clarifies purpose.

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 provides a hint about supplying 'email OR userId', implying at least one is required, but lacks explicit guidance on when not to use this tool or mention alternatives (e.g., updating instead of deleting). The usage is implied but not fully contextualized among siblings.

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

loops_find_contactFind a contactA
Read-only
Inspect

Find a contact by email or userId (supply at least one). Loops API: GET /v1/contacts/find.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoContact email address to look up.
userIdNoContact userId to look up (your app's user id).
Behavior4/5

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

Annotations already declare readOnlyHint=true, confirming read-only safety. The description adds the HTTP method (GET) and endpoint path, which is useful behavioral context.

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 action and constraint. No unnecessary words.

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 (2 optional parameters, no output schema), the description covers the core purpose and constraints completely.

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?

Input schema already describes both parameters with descriptions. The description adds no new semantic details beyond what schema provides, so baseline 3 is appropriate.

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 it finds a contact by email or userId, and the title and sibling list distinguish it from create, delete, update, etc.

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 explicitly says 'supply at least one', providing a usage constraint. It doesn't contrast with alternatives but the read-only nature and sibling names imply appropriate use.

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

loops_list_contact_propertiesList contact propertiesA
Read-only
Inspect

List contact fields / custom properties defined in Loops. Loops API: GET /v1/contacts/properties.

ParametersJSON Schema
NameRequiredDescriptionDefault
listNoWhich properties to return: all (default) or custom only.
Behavior3/5

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

The description aligns with the readOnlyHint annotation, confirming it is a read-only operation. However, it does not disclose any additional behavioral traits beyond what annotations already provide. The description adds minimal value in this dimension.

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 extremely concise: two sentences, no wasted words. The main action is front-loaded, and the API reference provides additional context without redundancy.

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?

Given the tool's low complexity (single optional enum parameter, no output schema, read-only), the description is complete enough. It clearly states what the tool lists. The lack of output schema is acceptable for a standard list operation.

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?

The single parameter 'list' is fully documented in the schema with enum descriptions. The description does not add meaning beyond the schema, which already explains the options ('all' or 'custom'). High schema coverage justifies a baseline of 3.

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 tool lists contact fields or custom properties, using a specific verb ('list') and resource ('contact properties'). The inclusion of the API endpoint adds precision. It is easily distinguishable from sibling tools like loops_create_contact_property.

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 does not explicitly state when to use this tool versus alternatives. While the purpose is clear from context, there is no guidance on when not to use it or what filtering is possible. For a simple list tool, this is adequate but not exemplary.

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

loops_list_mailing_listsList mailing listsA
Read-only
Inspect

List all mailing lists in the Loops account (id + name). Loops API: GET /v1/lists.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, so the agent knows it is a safe read operation. The description adds transparency by specifying the API endpoint (GET /v1/lists) and the returned fields, which provides useful context beyond the annotation.

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 extremely concise (one sentence plus an API note) with no extraneous information. Every part is necessary and front-loaded.

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 list operation with no parameters and no output schema, the description provides sufficient information: it lists all mailing lists and returns id and name. No additional details are needed.

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?

The schema has no parameters (0 params, 100% coverage). With no parameters, the description does not need to add parameter information. According to guidelines, 0 params gives a baseline of 4, which is appropriate here.

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 that the tool lists all mailing lists, specifies the resource ('Loops account'), and indicates the return fields (id + name). This is a specific verb+resource combination that distinguishes it from sibling tools like loops_create_contact or loops_find_contact.

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

Usage Guidelines2/5

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 alternatives. The description only states what the tool does, without any context on when it is appropriate or when another tool might be better.

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

loops_send_eventSend an eventA
Destructive
Inspect

Sends an event to Loops for a contact — TRIGGERS any automations/loops subscribed to this event. Loops API: POST /v1/events/send.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailNoContact email (supply email or userId).
userIdNoContact userId (supply email or userId).
eventNameYesThe event name to send (required).
mailingListsNoMap of mailing-list id -> subscribed boolean.
eventPropertiesNoProperties attached to this event.
contactPropertiesNoContact properties to update alongside the event.
Behavior4/5

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

Discloses that sending an event triggers automations, which goes beyond annotations. No contradictions with destructiveHint: true.

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 fluff. Front-loads the action and side effect.

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?

Covers main purpose and side effect, but no details on return values, error behaviors, or additional context for the 6 parameters.

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 100%, so description adds no extra parameter meaning beyond what the schema already provides.

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 sends an event and triggers automations. Distinguishes from sibling tools like loops_create_contact or loops_delete_contact.

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

Usage Guidelines2/5

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

No guidance on when to use vs alternatives, no exclusion criteria or prerequisites mentioned.

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

loops_send_transactionalSend a transactional emailB
Destructive
Inspect

SENDS a real transactional email via a Loops template. This dispatches an actual email to the recipient. Loops API: POST /v1/transactional.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesRecipient email address (required).
attachmentsNoOptional attachments: array of { filename, contentType, data } objects.
addToAudienceNoWhether to add the recipient to your audience.
dataVariablesNoTemplate data variables (string/number) to interpolate into the template.
transactionalIdYesThe Loops transactional template id (required).
Behavior3/5

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

Annotations already provide destructiveHint=true, so the agent knows it mutates state. The description adds that the email is 'real' and mentions the API endpoint (POST /v1/transactional). However, it does not disclose potential failure modes, idempotency, or rate limits. Moderate 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.

Conciseness4/5

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

Two sentences plus a one-line API endpoint reference. The description is short and to the point, but the second sentence ('This dispatches...') is somewhat redundant with the first. No unnecessary fluff.

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?

The tool has no output schema, nested objects (attachments), and destructive behavior. The description fails to explain return values, error handling, or behavioral details like whether sending is synchronous. Gaps in completeness given the tool's complexity.

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 description coverage is 100%, so all parameters have clear descriptions. The description adds no extra parameter-level meaning beyond what the schema already provides. Baseline of 3 is appropriate as no additional semantic value is given.

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?

The description clearly states the tool sends a transactional email via a Loops template, using 'SENDS' and 'dispatches an actual email'. The title matches. However, it does not explicitly differentiate from sibling tools like loops_send_event, but the distinction is implied by the word 'transactional'.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., loops_send_event) or when not to use it. The description lacks context such as prerequisites or typical use cases. The only hint is the destructiveHint annotation indicating side effects.

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

loops_test_api_keyTest API keyA
Read-only
Inspect

Verify the configured Loops API key and return the team name — a good first call. Loops API: GET /v1/api-key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, and description reinforces the read-only nature by stating it's a GET request and a verification call. Adds value by mentioning the return of the team name.

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 wasted words. The purpose, HTTP method, and suggested usage are all front-loaded. Every word earns its place.

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?

Given the absence of parameters and output schema, the description provides sufficient context: it verifies the key and returns the team name. Could mention possible failure responses, but not essential for a simple health check.

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 are present, so the description does not need to add parameter details. The baseline for zero-parameter tools is 4.

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 tool verifies the Loops API key and returns the team name, with a specific verb and resource. It distinguishes itself from sibling tools that perform CRUD operations or send events.

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?

Explicitly suggests it's a good first call, providing usage context for initial setup or health checking. Does not explicitly state when not to use, but the simplicity of the tool makes this less critical.

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

loops_update_contactUpdate a contactA
Destructive
Inspect

Updates (or creates) a contact by email/userId. Upserts — creates the contact if not found. Loops API: PUT /v1/contacts/update.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesContact email address (required; identifies the contact).
sourceNoSource label.
userIdNoYour app's user id (alternative identifier).
lastNameNoLast name.
firstNameNoFirst name.
userGroupNoUser group segment name.
propertiesNoArbitrary custom contact properties (string/number/boolean); merged into the request body.
subscribedNoWhether the contact is subscribed to email.
mailingListsNoMap of mailing-list id -> subscribed boolean.
Behavior3/5

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

Annotations already mark destructiveHint=true; description adds upsert behavior info but lacks details on permissions, rate limits, or effects on existing properties.

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?

Concise two sentences with front-loaded purpose; the API endpoint line is marginally redundant but not wasteful.

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?

With 9 parameters, 100% schema coverage, no output schema, and destructive annotation, the description clarifies upsert but does not explain custom property merging, mailing list handling, or return values.

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 provides 100% description coverage for all 9 parameters; description does not add additional meaning beyond 'Updates (or creates) a contact by email/userId.' Baseline 3.

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 it updates or creates a contact (upsert) and specifies the identifier (email/userId). It distinguishes from sibling loops_create_contact by explicitly mentioning upsert behavior.

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 usage for updating or creating contacts, but does not explicitly state when to use this tool versus loops_create_contact or any conditions to avoid.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    Provides an interface to manage email marketing, contact lists, dynamic templates, and email analytics via SendGrid's API.
    21
    581
    29
    ISC
  • A
    license
    B
    quality
    C
    maintenance
    Manages SendGrid email workflows including design library, transactional templates, marketing contacts and lists, single sends, and direct email sends via the SendGrid v3 API.
    80
    581
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Lets AI tools send transactional emails, check status, and manage contacts through the Model Context Protocol.
    2

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.