kakao-mcp
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation4/5
The coordinate conversion tools (address_to_coord, coord_to_region, coord_to_address) have clear but slightly overlapping purposes, while the place search tools are distinguished by keyword vs category. The general search tool is clearly separate from local services. Only coord_to_region and coord_to_address could occasionally be confused.
Naming Consistency4/5All tools share the 'kakao_' prefix, and most follow a noun_to_noun or verb_noun pattern. However, 'place_by_category' and 'search' deviate from the conversion-oriented naming, making the set slightly inconsistent.
Tool Count5/5With 6 tools, the server covers both local API operations (address/coord conversions, place search) and a general search API. This is a well-scoped set for a Kakao API wrapper, with no redundant or missing obvious tools.
Completeness4/5The tool surface covers the primary Kakao Local API functions: forward/reverse geocoding, region lookup, and two types of place search. The general search tool handles web, blog, cafe, image, video, and book searches. Minor gaps exist (e.g., no direct region-to-coordinates lookup) but are workarounds.
Average 3.7/5 across 6 of 6 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 2 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must disclose behavioral traits on its own. It only states the core reverse-geocoding function and gives an example, but it omits important details such as return format, whether both road and lot addresses are returned, coordinate system, error handling, or rate limits. This leaves the agent without critical information about what to expect from the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded with the primary function, followed by a helpful example. Every element serves a purpose, with no filler or redundant information. It is appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's apparent simplicity, the description is incomplete because there is no output schema and no annotations. It does not describe the return structure, address type behavior, or failure modes. An agent would not know whether to expect a single string or structured fields, or how invalid coordinates are handled. This is a significant gap for a tool that produces complex address data.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents x as longitude and y as latitude with 100% coverage. The description's example (x=127.1086, y=37.4012) provides a concrete illustration of expected values and confirms the order, but it does not add deeper semantics such as value ranges, coordinate format requirements, or units. This is a marginal addition, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the tool's function: converting latitude/longitude coordinates to road name and land lot addresses ('도로명/지번 주소로 역변환'). The verb '역변환' (reverse convert) is specific and the concrete example with x and y values reinforces the input format. It implicitly distinguishes itself from sibling tools like kakao_address_to_coord (forward conversion) and kakao_coord_to_region (region-level) by focusing on full addresses.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus the siblings. It does not mention that kakao_coord_to_region is appropriate for administrative region lookups or state any exclusions. The only usage cue is the basic operation itself, which is trivial and not helpful for selecting between alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the search function and adds the scope 'domestic content,' but it does not mention whether results are read-only, any pagination or rate limits, or what the output contains. This falls short of the transparency burden given no annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences efficiently state the tool's function and a primary use case with no redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given 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 agent needs more context about return behavior, pagination, and limitations. The description provides only the function and a use case, leaving significant gaps for a 4-parameter search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters (type, query, size, sort) are already documented. The description adds no additional parameter-specific semantics beyond enumerating the type values, which are already in the enum. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a Daum search across multiple content types (web, blog, cafe, image, video, book). It distinguishes from sibling tools like kakao_search_place by focusing on general content search rather than places, though it does not explicitly name the alternative.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'useful for domestic content and SEO research' gives an intended use case, but it does not provide explicit when-to-use/when-not-to-use guidance or mention alternative tools such as kakao_search_place. The usage context is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
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. It only states the conversion action without detailing coordinate system assumptions, error handling, or any operational constraints. An agent gets no additional 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/5Is the description appropriately sized, front-loaded, and free of redundancy?
A single, compact Korean sentence that is front-loaded and directly states the tool's purpose. It contains zero unnecessary words and achieves high information density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter conversion tool, this description is adequate for understanding the core purpose. However, without an output schema or explanation of the exact fields in '행정동/법정동 행정구역 정보', an agent may lack enough context to parse the returned response fully.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes x as longitude and y as latitude with 100% coverage. The description's mention of '위경도 좌표' adds minimal extra meaning beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a conversion action ('위경도 좌표를 ... 변환') with a specific resource type (행정동/법정동 행정구역 정보). It doesn't explicitly differentiate from the sibling 'kakao_coord_to_address', but the output specificity makes it distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a use case for converting coordinates to administrative region info but provides no explicit guidance on when to use this tool versus the sibling 'kakao_coord_to_address'. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses a key behavioral trait: adding x,y and radius enables a surrounding search. However, it doesn't mention other behavioral aspects like result limits, sorting behavior, or whether the query must be a place name. This is minimal but not misleading.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, compact sentence with useful examples. It conveys the core functionality without unnecessary words, making it highly scannable for an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with 7 parameters and no output schema, the description covers the primary usage and gives examples that anchor parameter semantics. It doesn't detail return values, but the core purpose and trigger for coordinate-based search are clear. Given the straightforward nature of the tool, this is sufficient, though not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds marginal value by explicitly linking x,y and radius to the surrounding search use case, but it doesn't explain parameter syntax or formats beyond the schema. It neither compensates nor contradicts, so a baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for places by keyword, and optionally performs a surrounding search using coordinates and radius. It includes concrete examples ('강남역 카페', '판교 맛집') that illustrate typical queries, effectively distinguishing it from geocoding and category-based sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: keyword search, and when coordinates (x,y) and radius are supplied, a nearby search. It doesn't explicitly name alternatives or exclusions, but the examples and wording imply when this tool is appropriate relative to siblings like kakao_place_by_category or kakao_coord_to_address.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of disclosing behavior. It does mention that the tool returns a normalized address, which is an additional behavior beyond the name's implication. However, it does not disclose potential errors, rate limits, authentication requirements, or the exact response format, which are relevant for an external API tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded: two sentences that state the core behavior and provide an example. There is no redundant information or filler. Every sentence earns its place, making it easy for an agent to quickly grasp the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has a single parameter, no output schema, and no annotations. The description covers the main purpose, the input format via the example, and the output (coordinates and normalized address). It lacks an example of the output structure, which would be useful since no output schema is available, but it is sufficient for a straightforward conversion tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes the 'query' parameter as the address string to search (100% coverage). The description adds value by providing a concrete example of a valid address format, including Korean road address syntax. This helps the agent understand what kind of string is expected beyond the generic schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool converts addresses (both road name and lot number) to latitude/longitude coordinates and returns a normalized address. The provided example '경기도 성남시 분당구 판교역로 235' further clarifies the expected input. This distinguishes it from sibling tools like kakao_coord_to_address, which perform the reverse operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes it clear that this tool should be used when you have an address and need to obtain geographic coordinates. While it does not explicitly list alternative tools or exclusion criteria, the purpose is specific enough to infer when to use it over siblings. The lack of explicit alternatives is a minor gap, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavior. It accurately describes the search operation but adds minimal context beyond that—no mention of API key requirements, rate limits, or error conditions. The category code list is helpful but does not fully address operational traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, followed by a required-parameter note and a compact mapping table. There is no irrelevant detail, and the long code list is necessary. The structure is clean and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool, the description is fairly complete: it covers the primary action, required input, and category codes. However, it does not mention the return format or output structure, which is notable given the absence of an output schema, though this is somewhat expected for a list-returning search function.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides descriptions and examples for all parameters, but the description goes further by enumerating every valid category_group_code (MT1, CS2, etc.) with meanings. This is essential for correct usage and far exceeds the schema's two examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for places of a specific category around given coordinates. It lists all category codes, making the scope unambiguous. This distinguishes it from sibling tools like kakao_search_place (general search) and coordinate conversion utilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates when to use this tool (when you need places by category near coordinates) and explicitly notes that a category code is required. However, it does not mention alternatives or exclusions, such as using a general place search instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/Sedong-Choi/kakao-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server