@vanwida/haul-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@vanwida/haul-mcpverify this email address: user@example.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@vanwida/haul-mcp
MCP server for HAUL — the agent-native API marketplace.
Installation
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"haul": {
"command": "npx",
"args": ["-y", "@vanwida/haul-mcp"],
"env": {
"HAUL_API_KEY": "haul_sk_your_key_here"
}
}
}
}Get your API key at haul.aistudios.pro.
Related MCP server: Sms Verify3 MCP Server
Tools
Tool | Description | Credits |
| Verify if an email is valid and deliverable | 1 |
| Verify a phone number, get carrier/country info | 2 |
| Check your credit balance | 0 |
| Get a Stripe checkout URL to buy credits | 0 |
| List all available tools and costs | 0 |
Pricing
Amount | Credits |
$10 | 1,000 |
$25 | 2,750 |
$50 | 6,000 |
$100 | 13,000 |
Development
npm install
npm run build
HAUL_API_KEY=haul_sk_xxx node dist/index.jsLicense
MIT
Available Tools
5 toolshaul_check_balanceA
Check your current HAUL credit balance.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations supplied, the description carries the full burden. It hints at a non-mutating read operation ('Check') but does not disclose the expected return format, authentication needs, or any other behavioral details that would help an agent anticipate results.
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?
Single sentence with no filler; the key action and resource are 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.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool this is mostly sufficient, but it does not mention what the response will look like or any side effects. Given there is no output schema, a little more detail on the return value would make it fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema coverage is effectively 100% (empty object), so there are no parameter semantics for the description to add. A 0-parameter baseline of 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 uses a specific verb ('Check') with a clear resource ('current HAUL credit balance'), and this clearly distinguishes the tool from siblings like haul_topup_credits and the verification tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool does but provides no guidance on when to use it versus alternatives, no prerequisites, and no exclusions. The agent must infer usage solely from the purpose statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haul_list_toolsA
List all available HAUL tools and their credit costs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It conveys that this is a read-only listing operation and what it returns, but it does not disclose additional behavioral details such as authentication needs, whether the listing itself costs credits, or any caveats about the listing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no filler. It front-loads the action ('List') and then specifies the resource and returned information, so every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless discovery tool, the description is adequately complete: it states what the tool lists and what information is included (credit costs). Since there is no output schema, this return-value information is useful, though exact formatting details are not provided.
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 input schema has zero parameters and required parameters, so there are no parameter semantics to explain. The description does not need to compensate for any schema gaps, meeting the baseline for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and a precise resource ('all available HAUL tools') plus a meaningful attribute ('their credit costs'). It clearly distinguishes itself from the sibling tools, which are individual operations, whereas this tool is a discovery/listing 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 description implies the usage context: use this tool to discover available HAUL tools and their credit costs before selecting one. However, it does not explicitly state when to use it versus alternatives or mention any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haul_topup_creditsA
Get a Stripe checkout URL to buy more HAUL credits. Returns a URL the user can open.
| Name | Required | Description | Default |
|---|---|---|---|
| amount_usd | Yes | Amount in USD to top up (10, 25, 50, or 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden. It discloses that the tool returns a URL the user can open, which implies user involvement, but it doesn't explain side effects like whether a Stripe checkout session is created, whether credits are only added after payment, or whether the URL expires.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no wasted words. The core action is front-loaded, and the output expectation is stated clearly.
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 one-parameter tool with full schema coverage, the description sufficiently conveys the purpose and return value. It lacks optional details like checkout URL expiry or confirmation behavior, but those are not essential for a basic call.
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 schema already documents the single parameter fully, including the enum values and a description. The tool description adds no additional parameter semantics, so the baseline of 3 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 names a specific action ('Get a Stripe checkout URL') and a clear resource scope ('buy more HAUL credits'). It clearly distinguishes itself from the sibling tools, which are about verification, balance checking, and listing tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to buy more HAUL credits' gives clear context for when to use the tool. It doesn't explicitly mention when not to use it or name alternatives, but the purpose is distinct enough from siblings that an agent can confidently select it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haul_verify_emailA
Verify if an email address is valid and deliverable. Costs 1 credit.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email address to verify |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. It does disclose a key operational effect ('Costs 1 credit'), which is valuable. However, it does not describe whether a network/deliverability check is performed, side effects, rate limits, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single compact sentence with no filler. The core purpose is front-loaded and the important cost detail is included cleanly at the end.
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 one-parameter tool, the schema plus description reasonably cover how to invoke it and what it costs. However, with no output schema and no annotations, the description does not explain what the call returns or how edge cases such as invalid emails, timeouts, or credit charges on failure are handled.
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% for the single parameter, so the schema already documents what 'email' means. The description reinforces that the email is verified for validity and deliverability but adds no additional parameter-level 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 uses a specific verb ('Verify') and a clearly scoped resource ('an email address') with concrete outcomes ('valid and deliverable'). It is immediately distinguishable from siblings like haul_verify_phone and haul_check_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?
The description gives no guidance on when to use this tool versus alternatives. Sibling names hint at categories, but the description never states a preferred scenario, exclusions, or a condition that would route an agent here instead of another tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
haul_verify_phoneA
Verify if a phone number is valid and get carrier/country info. Costs 2 credits.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | Yes | Phone number to verify (with country code, e.g. +1234567890) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries behavior disclosure itself. It discloses the credit cost ('Costs 2 credits'), which is a non-obvious side effect, and presents the operation as read-only verification. It does not specifiy response structure or failure modes, but for a simple verify tool the behavior is adequately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences: one states the core function and outcome, the second states the cost. No fluff or repeated information; the most important operational detail (cost) is included without bloating the description.
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 single-parameter verification tool, the description covers purpose, input format through the schema, and cost. It does not detail return value formatting, but it communicates the essential result categories (validity, carrier, country) adequately for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the phone parameter already includes a format example with country code (e.g. +1234567890). The tool description adds no per-paramter information beyond what the 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.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Verify') on a specific resource ('a phone number') and the primary outcomes: validity plus carrier/country info. This clearly distinguishes it from sibling tools like haul_verify_email and haul_check_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?
The resource and outcome make the intended use clear: verifying phone numbers. It does not explicitly name alternatives such as haul_verify_email for email verification, but the sibling context and targent resource provide sufficient context with no misleading exclusions.
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.
5 tool updates
v1.0.0- First observed
haul_check_balance - First observed
haul_list_tools - First observed
haul_topup_credits - First observed
haul_verify_email - First observed
haul_verify_phone
TDQS
Scored across 5 tools
Each tool targets a distinct operation: email verification, phone verification, balance checking, credit top-up, and tool listing. There is no overlap or ambiguity between them.
All tool names follow the same haul_verb_noun pattern using lowercase snake_case. This makes the API surface predictable and easy to navigate.
Five tools is well-scoped for a verification service with account management. Each tool serves a clear purpose and none feel redundant or missing.
The tool set covers the full user workflow: checking balance, verifying email or phone, adding credits via top-up, and discovering available tools. No critical gaps exist for the stated domain.
Maintenance
Related MCP Connectors
South African MCP server for airtime, data, SMS, VAS, electricity, balance, and network lookup.
MCP Server for agents to onboard, pay, and provision services autonomously with InFlow
MCP server for Pixapi: check live credit pricing and balance, then generate images and video.
MCP server for Vonage API documentation, code snippets, tutorials, and troubleshooting.
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for SMS verification — get virtual phone numbers, receive OTP codes, and manage verifications for 500+ services across 50+ countries via the VirtualSMS API.4043 npm8MIT
- FlicenseCqualityDmaintenanceMCP server for accessing Sms Verify3 API to send numeric verification codes and estimate costs.1-
- AlicenseBqualityDmaintenanceMCP server for integrating with SMS-Activate service, enabling phone number operations, email activations, and account management for receiving SMS verification codes and temporary email addresses.17MIT

thaibulksmsofficial
AlicenseAqualityDmaintenanceMCP server for ThaiBulkSMS and ThaiBulkMail APIs, enabling SMS, email, credit check, and OTP operations through natural language.811 npmMIT