Skip to main content
Glama

get_etiquette_guide

Retrieve country-specific business etiquette guides for APAC, covering meishi protocol, gift culture, drinking norms, hierarchy, and religious awareness. Select a country to get tailored advice.

Instructions

Business etiquette per country: meishi protocol, gift culture, drinking culture, hierarchy norms, religious awareness.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countryYes

Implementation Reference

  • ETIQUETTE_GUIDES data object containing business etiquette data per country (Japan, Singapore, Korea, India, Australia, Hong Kong, Taiwan, Indonesia). Includes meishi protocol, gift culture, drinking culture, hierarchy norms, religious awareness, etc.
    const ETIQUETTE_GUIDES: Record<string, any> = {
      japan: { meishi_protocol: "Business cards exchanged with both hands, slight bow. Read the card carefully. Place it on the table during the meeting — never in pocket.", gift_culture: "Modest gifts when visiting (omiyage). Wrap matters more than content. Avoid sets of 4 (death).", drinking_culture: "Nomikai bonding important. Pour for others, never yourself. Refusal possible but signals distance.", silence: "Comfortable with silence — don't fill it." },
      singapore: { meishi_protocol: "Bilingual cards (English + Chinese for Chinese contacts) appreciated.", gift_culture: "Modest, practical gifts. Avoid clocks (Chinese), pork products, alcohol if Muslim.", communication: "Direct OK, but always with respect. 'Lah' OK after rapport." },
      korea: { meishi_protocol: "Hand and receive cards with both hands, slight bow. Senior person initiates.", gift_culture: "Modest gifts, wrapped. Liquor (whiskey) appreciated for senior contacts. Avoid green hats (cultural taboo).", drinking_culture: "Soju/beer culture for relationship. Pour for others. 'One-shot' culture — pace yourself.", hierarchy: "Always defer to most senior person — eye contact, who speaks first, seating." },
      india: { meeting_protocol: "Namaste greeting acceptable. Handshakes increasingly common. Family chat first.", gift_culture: "Modest gifts. Avoid leather (Hindu/Jain) and pork (Muslim). Sweets appreciated.", food_culture: "Vegetarianism common. Don't assume.", time_orientation: "Indian Standard Time = often delayed. Patience." },
      australia: { meeting_protocol: "First names immediately. Handshake firm. No bowing.", gift_culture: "Not really expected for business. Wine OK if invited home.", communication: "Casual humor. Banter expected. Self-deprecation appreciated." },
      hongkong: { meishi_protocol: "Bilingual (English + Traditional Chinese). Both hands.", gift_culture: "Avoid clocks, white flowers, sets of 4. Red appreciated for festivities.", food_culture: "Yum cha lunch meetings effective. Decline politely 3 times before accepting (cultural expectation)." },
      taiwan: { meishi_protocol: "Traditional Chinese characters preferred. Both hands.", gift_culture: "Tea, fruit baskets standard. Avoid clocks, white flowers.", food_culture: "Long meals expected. Hosts pay (alternation builds relationship)." },
      indonesia: { meeting_protocol: "Right hand for greetings/handshakes (left hand unclean culturally). Use Bapak/Ibu.", gift_culture: "Avoid pork, alcohol, leather to Muslim contacts. Sweets/snacks appreciated.", religious_awareness: "Halal food considerations. Prayer time accommodations.", communication: "Avoid direct 'no'. Smile can mask discomfort." }
    };
  • src/main.ts:176-176 (registration)
    Tool registration with name 'get_etiquette_guide', description, and inputSchema requiring a country parameter validated against ETIQUETTE_GUIDES keys.
    { name: "get_etiquette_guide", description: "Business etiquette per country: meishi protocol, gift culture, drinking culture, hierarchy norms, religious awareness.", inputSchema: { type: "object", properties: { country: { type: "string", enum: Object.keys(ETIQUETTE_GUIDES) } }, required: ["country"] } },
  • Handler for the 'get_etiquette_guide' tool: looks up the country in ETIQUETTE_GUIDES, throws if not found, and returns the etiquette data wrapped with module label.
    case "get_etiquette_guide": { const d = ETIQUETTE_GUIDES[country]; if (!d) throw new Error(`Unknown: ${country}`); return { content: [{ type: "text", text: JSON.stringify({ module: "APAC Business Etiquette", country, ...d }, null, 2) }] }; }
Behavior2/5

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

Without annotations, the description carries full burden but only hints at content areas. It fails to disclose behavioral traits such as response format (e.g., text, structured data), length, or any limitations. An agent cannot predict what the output will look like.

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 concise: a single sentence listing key topics. It effectively front-loads the purpose. However, it could benefit from a clearer structure, such as specifying that the parameter selects the country, and perhaps a brief note on output format.

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 simple nature of the tool (single enum parameter), the description covers the core purpose adequately. However, it lacks completeness in specifying what the user receives (e.g., a textual guide, list of norms) and does not mention any output schema or return type, which limits the agent's ability to handle the result.

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

Parameters1/5

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

With schema description coverage at 0%, the description must compensate for the parameter 'country'. It does not mention the parameter at all, nor the available enum values (e.g., japan, singapore). The description adds no meaning beyond the schema itself.

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 provides business etiquette per country, listing specific topics like meishi protocol, gift culture, drinking culture, hierarchy norms, and religious awareness. This distinctly differentiates it from sibling tools which focus on compliance, brief overviews, followups, outreach, and stakeholder mapping.

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 like get_country_brief or get_compliance_check. There is no mention of context or prerequisites, leaving the agent to infer usage solely from the tool name.

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

Install Server

Other Tools

Latest Blog Posts

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/closermethod/apac-compliance-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server