MCP Server Builder
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
Places, routes, travel times, distances and weather in China through the 高德地图 (Amap) MCP server.
$ npx skills add nano-muse/nanoMuse --skill amap -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install nano-muse/nanoMuse amap --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .claude/skills && cp -r skills-src/nanomuse/skills/builtin/amap .claude/skills/amap && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .claude/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amapType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add nano-muse/nanoMuse --skill amap -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install nano-muse/nanoMuse amap --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .agents/skills && cp -r skills-src/nanomuse/skills/builtin/amap .agents/skills/amap && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .agents/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nano-muse/nanoMuse --skill amap -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install nano-muse/nanoMuse amap --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/nanomuse/skills/builtin/amap .cursor/skills/amap && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .cursor/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/nano-muse/nanoMuse.git --path nanomuse/skills/builtin/amap--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add nano-muse/nanoMuse --skill amap -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install nano-muse/nanoMuse amap --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/nanomuse/skills/builtin/amap .gemini/skills/amap && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .gemini/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install nano-muse/nanoMuse amapInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add nano-muse/nanoMuse --skill amap -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .github/skills && cp -r skills-src/nanomuse/skills/builtin/amap .github/skills/amap && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .github/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add nano-muse/nanoMuse --skill amap -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install nano-muse/nanoMuse amap --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nano-muse/nanoMuse.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/nanomuse/skills/builtin/amap .opencode/skills/amap && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "amap" agent skill from https://github.com/nano-muse/nanoMuse/tree/main/nanomuse/skills/builtin/amap into .opencode/skills/amap/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "amap", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
amapPlaces, routes, travel times, distances and weather in China through the 高德地图 (Amap) MCP server.
Amap is an agent skill from nano-muse/nanoMuse. Places, routes, travel times, distances and weather in China through the 高德地图 (Amap) MCP server. Use when the user asks how far, how long, how to get somewhere (car, transit, bike, foot), what is near a place, or about the weather in a Chinese city.
Its SKILL.md is about 960 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering MCP servers. It works with Model Context Protocol. The repository describes itself as: nanoMuse: an open-source personal agent for every device you own. One agent with a name and a look of its own that does things, keeps working while the app is closed, remembers… The licence is GPL-3.0.
Read from SKILL.md and the folder at commit 29e7a91. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are toml).
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
mcp.amap.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
AMAP_KEYAMAP_MAPS_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Amap loads about 964 tokens when it runs. Until then it costs about 64 tokens; SKILL.md has 528 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from nano-muse/nanoMuse at commit 29e7a91, republished under its GPL-3.0 licence (© nano-muse). 528 words, ~964 tokens.
.claude/skills/amap/SKILL.md (or your agent's skills folder).高德 publishes an MCP server with twelve tools; configured, they appear to you as amap__maps_*. No browser, no phone, no screenshots: a question about a place is one or two tool calls.
Look for amap__maps_geo in your tools. If it is not there, say so in one line and give the user the four lines to add to config.toml, then stop. Your tools list is the only place it can be: do not run shell commands or scripts to look for it, and when the user asked for an app on their phone and you have read it there, the answer is complete without this skill:
[[mcp.servers]]
name = "amap"
url = "https://mcp.amap.com/mcp?key={{vault:AMAP_KEY}}" # a free Web 服务 key from console.amap.com
risk = "safe"and nanomuse vault set AMAP_KEY. Without Node, the hosted URL is the way; with it, command = "npx", args = ["-y", "@amap/amap-maps-mcp-server"], env = { AMAP_MAPS_API_KEY = "{{vault:AMAP_KEY}}" } does the same.
amap__maps_geo: an address or a landmark (北京南站, 上海市浦东新区世纪大道100号) → coordinates lng,lat; amap__maps_regeocode the other way round. Almost everything else wants coordinates, so this comes first.amap__maps_text_search: places by keyword (咖啡, 汉庭酒店) in a city; amap__maps_around_search, the same within radius metres of a location; amap__maps_search_detail, one place's details by its id (opening hours, rating, phone, address).amap__maps_direction_driving, amap__maps_direction_walking, amap__maps_bicycling: a route between two coordinates with distance, duration and the steps; amap__maps_direction_transit_integrated, bus, metro and train together, and across cities with city and cityd.amap__maps_distance: just the distance and time between points (type 1 = driving, 3 = straight line).amap__maps_weather: today and the next few days for a city name or adcode.Coordinates are 经度,纬度 (longitude first, GCJ-02). Durations come in seconds and distances in metres: say them as minutes and kilometres.
around_search, then give three places at most with what makes each worth it (rating, distance, open now), not the whole list.train-tickets skill on the phone) make one plan: leave home at 07:10, G1 at 08:00.feishu skill; a meeting's location is checked before the event is created.trips/, written with the trip-plan skill; the coordinates and distances come from here.A few lines: where, how far, how long, by what, and the weather when it matters. Save nothing unless asked. remember the user's home and workplace once they name them, so that the next "how long to get to …" needs no question.
© nano-muse, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in nanomuse/skills/builtin/amap of nano-muse/nanoMuse.
Open the folder on GitHubat commit 29e7a91
Amap next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Amap this skillnano-muse/nanoMuse | 381 | — | ~964 | Automated safety check: Pass | GPL-3.0 | |
| MCP Server Builderanthropics/skills | 180k | 63 repos | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| MCP Server BuildershareAI-lab/learn-claude-code | 78k | 5 repos | ~1.2k | Automated safety check: Pass | MIT | |
| MCP Integration for Pluginsanthropics/claude-plugins-official | 38k | 11 repos | ~3.1k | Automated safety check: Pass | Apache-2.0 | |
| Crush Configurationcharmbracelet/crush | 29k | — | ~3.7k | Automated safety check: Pass | Custom licence | |
| Context Mode Output Sandboxmksglu/context-mode | 26k | — | ~4.1k | Automated safety check: Pass | Custom licence |
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
shareAI-lab/learn-claude-code
Walks through building MCP servers in Python or TypeScript that expose tools, resources and prompts to Claude, with templates, registration and testing.
anthropics/claude-plugins-official
Explains how to bundle Model Context Protocol servers in a Claude Code plugin, covering config files, stdio, SSE, HTTP and WebSocket server types, and authentication.
charmbracelet/crush
Explains how to configure the Crush coding agent with crushrc or crush.json, covering providers, models, LSPs, MCP servers, hooks, permissions and config precedence.
mksglu/context-mode
Routes large command, file, API and browser output through context-mode tools so only the needed result enters the agent's context, instead of dumping it via Bash.
warpdotdev/warp
Migrates the compatible subset of settings and global file-based MCP servers from the Warp desktop app into Warp Agent CLI without exposing credentials or state.
nano-muse/nanoMuse
Where a parcel is, when it will arrive and what a shipment would cost, through the 快递100 MCP server: any Chinese courier (顺丰, 京东, 中通, 圆通, 韵达, 邮政 and more) from a tracking number.
nano-muse/nanoMuse
Trains in China through the 12306 MCP server: routes, dates, options, connections and stops with no screen; booking only on the user's word, in the 12306 app on their phone, stopping before payment.
nano-muse/nanoMuse
Compare two to five options (products, plans, places, tools, offers) on the criteria that matter to the user, in a table the user can re-weight, with a recommendation.
nano-muse/nanoMuse
The user's 飞书 / Lark through its command-line tool (lark-cli): agenda, people and groups, reading and sending messages, events, tasks, documents, with no app open.
nano-muse/nanoMuse
Go through recent mail and sort it into needs-a-reply, waiting-on-others, to-do and can-ignore, with draft replies ready for review.
nano-muse/nanoMuse
Prepare for a meeting (who is in it, what was last said with them, what the user owes them and wants from them) as a one-page brief.
Works with
Categories
Places, routes, travel times, distances and weather in China through the 高德地图 (Amap) MCP server. Amap is an agent skill from nano-muse/nanoMuse. Places, routes, travel times, distances and weather in China through the 高德地图 (Amap) MCP server.
Amap fits situations like: the user asks how far; how to get somewhere (car; what is near a place; about the weather in a Chinese city.
Run `npx skills add nano-muse/nanoMuse --skill amap -a claude-code`. Or copy the skill folder (nanomuse/skills/builtin/amap in nano-muse/nanoMuse) into .claude/skills/amap in your project. Claude Code loads it when a task matches its description.
Run `npx skills add nano-muse/nanoMuse --skill amap -a codex`. Or copy the skill folder (nanomuse/skills/builtin/amap in nano-muse/nanoMuse) into .agents/skills/amap in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add nano-muse/nanoMuse --skill amap -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/amap, .gemini/skills/amap, .github/skills/amap and .opencode/skills/amap in your project.
Going by SKILL.md and its folder, Amap needs credentials named AMAP_KEY and AMAP_MAPS_API_KEY. Our summary lists: A credential in AMAP_KEY; A credential in AMAP_MAPS_API_KEY.
SKILL.md names 1 domain. In commands or code: mcp.amap.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Amap is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 964 tokens (SKILL.md is roughly 3.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Amap: MCP Server Builder (anthropics/skills, 180k stars), MCP Server Builder (shareAI-lab/learn-claude-code, 78k stars), MCP Integration for Plugins (anthropics/claude-plugins-official, 38k stars) and Crush Configuration (charmbracelet/crush, 29k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
nano-muse (a GitHub organization) maintains it in nano-muse/nanoMuse, which has 381 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 9, 2026.
Source: nano-muse/nanoMuse on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.