Hiworks Mail MCP
The Hiworks Mail MCP server allows users to interact with the Hiworks mail system with the following capabilities:
Read username: Retrieve the configured Hiworks username
Search email: Search for emails in the Hiworks mailbox
Read email: Read a specific email by providing the message ID
Send email: Send emails with options for recipients, subject, content (HTML or text), attachments, CC, and BCC
Click on "Install 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., "@Hiworks Mail MCPsearch for emails from my boss in the last week"
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.
Hiworks Mail MCP
This is an MCP (Model Context Protocol) server that can search and send mail by linking with the Hiworks mail system.
MCP Settings
Add the following to your MCP server settings in Claude Desktop or Cursor AI:
{
"mcpServers": {
"hiworks-mail-mcp": {
"command": "npx",
"args": ["-y", "hiworks-mail-mcp@latest"],
"env": {
"HIWORKS_USERNAME": "your.email@hiworks.com",
"HIWORKS_PASSWORD": "your_password"
}
}
}
}HIWORKS_USERNAME: Hiworks email addressHIWORKS_PASSWORD: Hiworks account password
Related MCP server: MCP Mail Server
Server Settings
By default, the following server settings are used:
POP3: pop3s.hiworks.com:995 (SSL)
SMTP: smtps.hiworks.com:465 (SSL/TLS)
caution
Please keep your account information safe.
Please follow Hiworks' policies when sending bulk emails.
Available Tools
4 toolsread_emailC
하이웍스 이메일을 읽어옵니다.
| Name | Required | Description | Default |
|---|---|---|---|
| username | No | ||
| password | No | ||
| messageId | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the action ('read') but doesn't disclose behavioral traits such as authentication needs (implied by username/password parameters), rate limits, error handling, or what 'read' returns (e.g., full email content). This leaves significant gaps for a tool with authentication parameters.
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 in Korean with no wasted words. It's front-loaded with the core action and resource, making it easy to parse quickly. Every word contributes to stating the purpose without 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?
Given the complexity (3 parameters, authentication, no output schema, and no annotations), the description is incomplete. It doesn't cover parameter meanings, return values, or behavioral context. For a tool that likely involves sensitive data (email) and authentication, more detail is needed to be fully usable by an AI agent.
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 0%, so the description must compensate. It doesn't mention any parameters, leaving all three (username, password, messageId) undocumented. The description adds no meaning beyond the schema, failing to explain what 'messageId' refers to or why authentication is needed, which is critical given the low coverage.
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 '하이웍스 이메일을 읽어옵니다' (Reads Hiworks email) states a clear verb ('read') and resource ('Hiworks email'), but it's vague about scope and doesn't distinguish from sibling tools like 'search_email'. It specifies the service (Hiworks) but lacks detail on what 'read' entails (e.g., fetching a single email vs. listing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like 'search_email' or 'send_email'. The description implies it's for reading emails, but doesn't specify scenarios (e.g., for a specific message ID) or exclusions. Usage is implied from the name and context, but no practical advice is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_usernameC
하이웍스 username을 읽어옵니다.
| Name | Required | Description | Default |
|---|---|---|---|
| username | No | ||
| password | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It implies a read operation but doesn't disclose authentication needs (despite username/password parameters), rate limits, error conditions, or what the return value looks like. This is inadequate for a tool with parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's appropriately sized for a simple tool, though it could be more informative without sacrificing brevity.
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 tool with 2 parameters, 0% schema coverage, no annotations, and no output schema, the description is insufficient. It doesn't explain parameter usage, return values, or behavioral context, making it incomplete for effective agent use.
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 0%, so the description must compensate but doesn't mention parameters at all. The two parameters (username, password) are undocumented in both schema and description, leaving their purpose and usage unclear. The description adds no value 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 '하이웍스 username을 읽어옵니다' (Reads Hiworks username) states a clear verb+resource action, but it's somewhat vague about what exactly is being read. It doesn't distinguish from sibling tools like read_email or search_email, leaving ambiguity about whether this reads a specific user's username or lists usernames.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like read_email or search_email. The description doesn't mention prerequisites, context, or exclusions, leaving the agent with no usage direction beyond the basic purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_emailC
하이웍스 이메일을 검색합니다.
| Name | Required | Description | Default |
|---|---|---|---|
| username | No | ||
| password | No | ||
| query | No | ||
| limit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure but fails to do so. It does not mention authentication needs (despite username/password parameters), rate limits, output format, or any behavioral traits. This leaves critical operational details unspecified.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It is appropriately sized and front-loaded, stating the core action and system without unnecessary elaboration, making it highly concise.
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 complexity of a search tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It lacks details on authentication, search scope, result handling, and behavioral context, failing to provide sufficient information for effective tool use.
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 0%, and the description adds no meaning beyond the schema. It does not explain parameters like 'username', 'password', 'query', or 'limit', nor their roles or formats. For a tool with 4 parameters, this lack of semantic information is inadequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool's purpose ('search emails') and specifies the system ('Hiworks'), which provides basic clarity. However, it lacks specificity about what aspects of emails are searched (e.g., subject, body, sender) and does not differentiate from sibling tools like 'read_email' or 'send_email', making it somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'read_email' or 'send_email'. The description implies usage for searching emails but offers no context on prerequisites, exclusions, or comparative scenarios, leaving the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_emailD
하이웍스 이메일을 전송합니다.
| Name | Required | Description | Default |
|---|---|---|---|
| username | No | ||
| password | No | ||
| to | Yes | ||
| subject | Yes | ||
| text | No | ||
| html | No | ||
| cc | No | ||
| bcc | No | ||
| attachments | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure but offers none. It doesn't mention authentication requirements (despite username/password parameters), rate limits, error conditions, whether the operation is idempotent, or what happens on success/failure. For a mutation tool with 9 parameters, this lack of behavioral context is critically inadequate.
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 - a single Korean sentence. While this is efficient, it's arguably under-specified rather than appropriately concise given the tool's complexity. However, it does front-load the core purpose without unnecessary elaboration, earning points for brevity.
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 mutation tool with 9 parameters (including complex nested objects for attachments), no annotations, 0% schema description coverage, and no output schema, the description is completely inadequate. It provides no information about authentication, parameter usage, return values, error handling, or behavioral characteristics that an agent needs to use this tool effectively.
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 0%, meaning none of the 9 parameters have descriptions in the schema. The tool description provides no information about any parameters, their purposes, formats, or relationships. This leaves critical parameters like 'attachments' (with nested objects) completely undocumented, failing to compensate for the schema's deficiencies.
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 '하이웍스 이메일을 전송합니다' (Sends Hiworks email) states the basic action but is tautological with the tool name 'send_email'. It doesn't specify what distinguishes this email sending tool from potential alternatives or clarify the scope beyond the obvious verb+resource pairing. While it identifies the service (Hiworks), it lacks specificity about capabilities or constraints.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus the sibling tools (read_email, read_username, search_email). The description doesn't mention prerequisites, appropriate contexts, or exclusions. An agent would have to infer usage from the tool name alone without any contextual direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose with no overlap: read_email retrieves emails, read_username fetches usernames, search_email finds emails based on criteria, and send_email sends emails. The descriptions are straightforward and unambiguous, making tool selection easy for an agent.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., read_email, send_email). This uniformity makes the tool set predictable and easy to understand, with no deviations in naming conventions.
With 4 tools, the count is reasonable for an email management server, covering core operations like reading, searching, and sending emails, plus username retrieval. It is slightly lean but well-scoped for basic functionality, though additional tools like deleting or managing folders might enhance completeness.
The tools cover essential email operations (read, search, send) and username access, but there are notable gaps in lifecycle management, such as deleting emails, managing folders, or handling attachments. While agents can perform basic tasks, the lack of update or delete functions limits full email workflow coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A MCP server for Gmail that lets you search, read, and draft emails and replies.
Read, search, send, organize, draft and schedule email across your inboxes from any MCP client.
A MCP server for Outlook email that lets you search, read, and draft emails and replies.
An MCP server that provides email capabilities, hosted on Alpic platform
Related MCP Servers
- -licenseNot gradedqualityNot gradedmaintenanceA Model Context Protocol server that enables applications to interact with Gmail through a clean API, supporting email searching, sending, reading, and label management.
- AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that enables email operations through POP3 and SMTP protocols in Cursor AI, allowing users to send, receive, list, and manage emails using natural language commands.1,25145MIT
- FlicenseBqualityDmaintenanceAn MCP server that enables users to interact with their Naver Mail account via the Model Context Protocol. It allows for seamless mail integration and management within MCP-compatible clients like Claude Desktop.16
- FlicenseBqualityNot gradedmaintenanceThis MCP server enables users to manage emails via POP3 and SMTP protocols, allowing for listing, searching, reading, and sending messages. It also supports fetching email threads and extracting text content from various document attachments including PDFs and Office files.8
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/beylessai/hiworks-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server