Skip to main content
Glama
yunkee-lee

MCP Naver Maps

by yunkee-lee

MCP Naver Maps

The MCP connects to the Naver Maps API and Naver Search API. 네이버 지도 API와 검색 API에 (로컬) 연결하는 MCP 서버.

It currently supports the following APIs:

Prerequisites

Before you begin, ensure you have the following installed:

  • Python: Version 3.13 or higher

  • uv: You can find installation instructions here.

  • Naver Cloud Platform Account: You need API credentials (Client ID and Client Secret) for the Naver Maps service. You can obtain these from the Naver Cloud Platform console.

  • Naver Develoeprs Account: You need API credentials (Client ID and Client Secret) for the Naver Developers API. You can obtain these from the Naver Developers.

Related MCP server: MCP TMAP Server

Configuration

  1. Create a .env file: Create a file in the project root.

  2. Add API Credentials: Edit the .env file and add your Naver Maps API credentials and Naver Developers API credentials.

    NAVER_MAPS_CLIENT_ID="YOUR_NAVER_MAPS_CLIENT_ID"
    NAVER_MAPS_CLIENT_SECRET="YOUR_NAVER_MAPS_CLIENT_SECRET"
    NAVER_CLIENT_API="YOUR_NAVER_CLIENT_API"
    NAVER_CLIENT_SECRET="YOUR_NAVER_CLIENT_SECRET"

    Please verify the exact environment variable names required by checking src/mcp_naver_maps/naver_maps_client.py.

Running the MCP

  1. Sync Dependencies: Navigate to the project root directory in your terminal and run the following command. This will create a virtual environment (if one doesn't exist) and install all dependencies specified in pyproject.toml.

    uv sync
  2. Run:: You can run the MCP server using uv.

    uv run src/mcp_naver_maps

    For development,

    source .venv/bin/activate
    mcp dev src/mcp_naver_maps/server.py

Available Tools

2 tools
geocodeB

Searches for address information related to the entered address.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesaddress to search for
languageNolanguage used in responsekor

TDQS

B3.1/5.0
Behavior2/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 of behavioral disclosure. While 'searches' implies a read-only operation, it doesn't specify details like rate limits, authentication needs, error handling, or what 'address information' includes (e.g., coordinates, formatted address). This is a significant gap for a tool with no annotation coverage.

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 a single, efficient sentence that directly states the tool's purpose without any fluff. It's appropriately sized and front-loaded, making it easy to parse quickly. Every word earns its place.

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 tool's moderate complexity (2 parameters, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on behavioral traits, usage context, and output format. Without an output schema, the description should ideally hint at what 'address information' includes, but it doesn't, leaving gaps in completeness.

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 input schema has 100% description coverage, with clear documentation for both parameters (address and language). The description adds no additional meaning beyond the schema, such as examples or usage notes. Given the high schema coverage, the baseline score of 3 is appropriate, as the schema does the heavy lifting.

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's purpose: 'Searches for address information related to the entered address.' This specifies the verb ('searches for') and resource ('address information'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from the sibling tool 'localSearch', which might have overlapping functionality.

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?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention the sibling tool 'localSearch' or any other context for usage, such as prerequisites or exclusions. This leaves the agent with no explicit 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.

localSearchC

Searches for places registered with Naver's local service.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesquery used for search
displayNonumber of search results to display in response
sortNosorting method. random: sorted by correctness. comment: sorted by a number of reviews (descending)random

TDQS

C2.9/5.0
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 states what the tool does but doesn't mention rate limits, authentication requirements, error conditions, response format, or whether this is a read-only operation. For a search tool with external API dependencies, this is insufficient 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 a single, efficient sentence that states the core purpose without unnecessary words. It's appropriately sized for a search tool and gets straight to the point with zero wasted text.

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 search tool with no annotations and no output schema, the description is incomplete. It doesn't explain what the response contains (e.g., place details, addresses, ratings), doesn't mention API limitations or authentication, and provides no guidance relative to the sibling tool. The agent would need to guess about important operational aspects.

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 description adds no parameter information beyond what's already in the schema, which has 100% coverage. The schema fully documents all three parameters with descriptions, constraints, and defaults. The baseline score of 3 reflects adequate schema coverage without additional value from the description.

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 action ('Searches for') and resource ('places registered with Naver's local service'), providing a specific purpose. However, it doesn't differentiate from the sibling tool 'geocode' which likely handles location-based searches, leaving room for ambiguity about when to use each.

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?

The description provides no guidance on when to use this tool versus alternatives. With a sibling tool 'geocode' available, there's no indication of whether this tool is for general place searches versus coordinate-based lookups, leaving the agent to guess about appropriate contexts.

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

TDQS

B3.1/5.0
Disambiguation5/5

The two tools have clearly distinct purposes: geocode handles address-to-coordinate conversion, while localSearch finds registered places. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on the task.

Naming Consistency5/5

Both tools follow a consistent naming pattern using camelCase (geocode, localSearch) with descriptive verb-noun structures. The naming is uniform and predictable across the set.

Tool Count2/5

With only two tools, the server feels under-scoped for a maps domain. While geocoding and local search are core functions, typical maps services include additional operations like routing, place details, or reverse geocoding, making this set appear incomplete.

Completeness2/5

For a maps server, there are significant gaps in coverage. Missing tools for routing, reverse geocoding, place details, or map visualization limit an agent's ability to handle common mapping workflows, leading to potential dead ends in tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A server that enables AI models to access Kakao Map features (place search, address lookup, route finding) and Daum search services (web, image, blog, cafe) through Model Context Protocol.
    17
    MIT
  • -
    license
    A
    quality
    Not graded
    maintenance
    Enables users to access Naver Maps API functionality including directions, place search, geocoding, and reverse geocoding through a Model Context Protocol server.
    4
  • F
    license
    A
    quality
    C
    maintenance
    Naver Search API + Datalab API MCP server with 19 tools for Korean web search and trend analysis.
    19
    19

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/yunkee-lee/mcp-naver-maps'

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