onboard-context-matic
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseOnboarding: ContextMatic MCP
入门:ContextMatic MCP
This skill delivers a guided, interactive tour of the MCP server. Follow every
phase in order. Stop after each interaction point and wait for the user's reply before continuing.
context-maticAgent conduct rules — follow throughout the entire skill:
- Never narrate the skill structure. Do not say phase names, step numbers, or anything that sounds like you are reading instructions (e.g., "In Phase 1 I will…", "Step 1a:", "As per the skill…"). Deliver the tour as a natural conversation.
- Announce every tool call before making it. One short sentence is enough — tell the user what you are about to look up and why, then call the tool. Example: "Let me pull up the list of available APIs for your project language." This keeps the user informed and prevents silent, unexplained pauses.
本技能将提供 MCP服务器的引导式交互式游览,请按顺序完成每个阶段,每个交互节点结束后停止操作,等待用户回复后再继续。
context-maticAgent行为规则——全程遵守:
- 永远不要提及技能的结构。不要说出阶段名称、步骤编号,或者任何听起来像你在读指令的内容(比如"在第一阶段我将…"、"步骤1a:"、"根据技能要求…"),要以自然对话的形式完成引导。
- 每次调用工具前都要提前告知用户。只用一句话说明即可:告诉用户你要查询什么内容、为什么要查,然后再调用工具。示例:"我来为你拉取适配你项目语言的可用API列表。" 这样可以让用户随时了解进度,避免出现无解释的静默等待。
Phase 0 — Opening statement and tool walkthrough
阶段0 — 开场介绍与工具概览
Begin with a brief, plain-language explanation of what the server does. Say it in your own words
based on the following facts:
The context-matic MCP server solves a fundamental problem with AI-assisted coding: general models are trained on public code that is often outdated, incorrect, or missing entirely for newer SDK versions. This server acts as a live, version-aware grounding layer. Instead of the agent guessing at SDK usage from training data, it queries the server for the exact SDK models, endpoints, auth patterns, and runnable code samples that match the current API version and the project's programming language.
After explaining the problem the server solves, walk through each of the four tools as if
introducing them to someone using the server for the first time. For each tool, explain:
- What it is — give it a memorable one-line description
- When you would use it — a concrete, relatable scenario
- What it gives back — the kind of output the user will see
Use the following facts as your source, but say it conversationally — do not present a raw table:
Tool What it does When to use it What you get back fetch_apiLists all APIs available on this server for a given language "What APIs can I use?" / Starting a new project A named list of available APIs with short descriptions askAnswers integration questions with version-accurate guidance and code samples "How do I authenticate?", "Show me the quickstart", "What's the right way to do X?" Step-by-step guidance and runnable code samples grounded in the actual SDK version model_searchLooks up an SDK model/object definition and its typed properties "What fields does an Order have?", "Is this property required?" The model's name, description, and a full typed property list (required vs. optional, nested types) endpoint_searchLooks up an endpoint method, its parameters, response type, and a runnable code sample "Show me how to call createOrder", "What does getTrack return?" Method signature, parameter types, response type, and a copy-paste-ready code sample
End this section by telling the user that you'll demonstrate the four core discovery and
integration tools live during the tour, starting with right now. Make it clear that
this tour is focused on those core ContextMatic server tools rather than every possible helper the
broader workflow might use.
fetch_api先用通俗易懂的语言简要说明该服务器的作用,你可以基于以下事实用自己的话表述:
context-matic MCP服务器解决了AI辅助编码的一个核心问题:通用大模型是基于公开代码训练的,这些代码往往已经过时、存在错误,甚至完全没有覆盖较新的SDK版本。该服务器相当于一个实时、感知版本的上下文 grounding 层,Agent无需基于训练数据猜测SDK的用法,而是可以向服务器查询与当前API版本、项目编程语言完全匹配的SDK模型、端点、鉴权模式和可运行代码示例。
解释完服务器解决的问题后,向首次使用该服务器的用户逐一介绍四个工具,每个工具需要说明:
- 是什么:给一个好记的一句话描述
- 什么时候用:具体的、贴近实际使用的场景
- 能返回什么:用户会看到的输出类型
请基于以下事实以对话形式介绍,不要直接展示原始表格:
工具 作用 使用场景 返回内容 fetch_api列出服务器上支持指定语言的所有可用API "我可以用哪些API?" / 启动新项目时 带简短描述的可用API命名列表 ask提供版本准确的集成指导和代码示例,解答集成相关问题 "我该如何鉴权?"、"给我看快速入门指南"、"实现X功能的正确方式是什么?" 基于实际SDK版本的分步指导和可运行代码示例 model_search查询SDK模型/对象定义及其带类型的属性 "Order对象有哪些字段?"、"这个属性是必填的吗?" 模型名称、描述,以及完整的带类型属性列表(区分必填/可选、嵌套类型) endpoint_search查询端点方法、参数、响应类型和可运行代码示例 "教我怎么调用createOrder"、"getTrack的返回内容是什么?" 方法签名、参数类型、响应类型,以及可直接复制使用的代码示例
本部分结束时,告知用户你将在游览过程中实时演示这四个核心的发现和集成工具,现在就从开始。同时明确说明本次游览仅聚焦ContextMatic服务器的这些核心工具,不会覆盖整个工作流可能用到的所有辅助工具。
fetch_apiPhase 1 — Show available APIs
阶段1 — 展示可用API
1a. Detect the project language
1a. 检测项目语言
Before calling , determine the project's primary language by inspecting workspace files:
fetch_api- Look for +
package.json/.tsfiles →.tsxtypescript - Look for or
*.csproj→*.slncsharp - Look for ,
requirements.txt, orpyproject.toml→*.pypython - Look for or
pom.xml→build.gradlejava - Look for →
go.modgo - Look for or
Gemfile→*.rbruby - Look for or
composer.json→*.phpphp - If no project files are found, silently fall back to .
typescript
Store the detected language — you will pass it to every subsequent tool call.
调用前,请先通过检查工作区文件判断项目的主编程语言:
fetch_api- 存在+
package.json/.ts文件 →.tsxtypescript - 存在或
*.csproj→*.slncsharp - 存在、
requirements.txt或pyproject.toml→*.pypython - 存在或
pom.xml→build.gradlejava - 存在→
go.modgo - 存在或
Gemfile→*.rbruby - 存在或
composer.json→*.phpphp - 未找到任何项目文件时,默认使用。
typescript
存储检测到的语言,后续所有工具调用都需要传入该参数。
1b. Fetch available APIs
1b. 获取可用API
Tell the user which language you detected and that you are fetching the available APIs — for
example: "I can see this is a TypeScript project. Let me fetch the APIs available for TypeScript."
Call with = the detected language.
fetch_apilanguageDisplay the results as a formatted list, showing each API's name and a one-sentence summary of
its description. Do not truncate or skip any entry.
Example display format (adapt to actual results):
Here are the APIs currently available through this server:
1. PayPal Server SDK — Payments, orders, subscriptions, and vault via PayPal REST APIs.
2. Spotify Web API — Music/podcast discovery, playback control, and library management.
....告知用户你检测到的语言,以及你即将拉取可用API——示例:"我发现这是一个TypeScript项目,我来为你拉取支持TypeScript的可用API。"
调用****,传入 = 检测到的语言。
fetch_apilanguage将结果展示为格式化列表,显示每个API的名称和描述的一句话总结,不要截断或省略任何条目。
示例展示格式(请适配实际返回结果):
以下是当前服务器提供的可用API:
1. PayPal Server SDK — 基于PayPal REST API实现支付、订单、订阅和保管库功能。
2. Spotify Web API — 音乐/播客发现、播放控制和库管理功能。
....Phase 2 — API selection (interaction)
阶段2 — API选择(交互环节)
Ask the user:
"Which of these APIs would you like to explore? Just say the name or the number."
Wait for the user's reply before continuing.
Store the chosen API's value from the response — you will pass it to all
subsequent tool calls. Also note the API's name for use in explanatory text.
keyfetch_api询问用户:
"你想探索这些API中的哪一个?直接告诉我名称或者序号都可以。"
等待用户回复后再继续。
存储返回结果中用户选择的API的值,后续所有工具调用都需要传入该参数。同时记录API名称,用于后续说明文本中。
fetch_apikeyPhase 3 — Explain the chosen API
阶段3 — 讲解选中的API
Before calling, say something like: "Great choice — let me get an overview of [API name] for you."
Call with:
ask- = chosen API's key
key - = detected language
language - =
query"Give me a high-level overview of this API: what it does, what the main controllers or modules are, how authentication works, and what the first step to start using it is."
Present the response conversationally. Highlight:
- What the API can do (use cases)
- How authentication works (credentials, OAuth flows, etc.)
- The main SDK controllers or namespaces
- The NPM/pip/NuGet/etc. package name to install
调用工具前可以说:"选得不错,我来为你获取[API名称]的概览信息。"
调用****,传入参数:
ask- = 选中API的key
key - = 检测到的项目语言
language - =
query"给我这个API的高层概览:它的功能、主要控制器或模块、鉴权方式,以及入门使用的第一步是什么。"
以对话形式展示返回结果,重点突出:
- API的能力(适用场景)
- 鉴权方式(凭证、OAuth流程等)
- 主要SDK控制器或命名空间
- 需要安装的NPM/pip/NuGet等包的名称
Phase 4 — Integration in the project language (interaction)
阶段4 — 基于项目语言的集成(交互环节)
Ask the user:
"Is there a specific part of the [API name] you want to learn how to use — for example, creating an order, searching tracks, or managing subscriptions? Or should I show you the complete integration quickstart?"
Wait for the user's reply.
Before calling, say something like: "On it — let me look that up." or "Sure, let me pull up the quickstart."
Call with:
ask- = chosen API's key
key - = detected language
language - = the user's stated goal, or
queryif they asked for the full guide."Show me a complete integration quickstart: install the SDK, configure credentials, and make the first API call."
Present the response, including any code samples exactly as returned.
询问用户:
"你有没有想了解的[API名称]的特定功能?比如创建订单、搜索曲目、管理订阅之类的。还是我给你展示完整的集成快速入门指南?"
等待用户回复。
调用工具前可以说:"好的,我来查询相关内容。" 或者 "没问题,我来拉取快速入门指南。"
调用****,传入参数:
ask- = 选中API的key
key - = 检测到的项目语言
language - = 用户提出的目标,如果用户选择完整指南则传入
query"给我展示完整的集成快速入门:安装SDK、配置凭证、发起第一次API调用。"
展示返回结果,包含所有代码示例,完全按照返回内容呈现。
Phase 5 — Demonstrate model_search
model_search阶段5 — 演示model_search
功能
model_searchTell the user:
"Now let me show you howworks. This tool lets you look up any SDK model or object definition — its typed properties, which are required vs. optional, and what types they use. It works with partial, case-sensitive names."model_search
Before calling, say something like: "Let me search for the model so you can see what the result looks like."
[model name]Pick a representative model from the chosen API (examples below) and call with:
model_search- = the previously chosen API key (for example,
keyorpaypal)spotify - = the detected project language
language - = the representative model name you picked
query
| API key | Good demo query |
|---|---|
| |
| |
Display the result, pointing out:
- The exact model name and its description
- A few interesting typed properties (highlight optional vs. required)
- Any nested model references (e.g., )
PurchaseUnit[] | undefined
Tell the user:
"You can search any model by name — partial matches work too. Try asking me to look up a specific model from [API name] whenever you need to know its shape."
告知用户:
"现在我来给你演示的用法。这个工具可以查询任何SDK模型或对象的定义——包括带类型的属性、区分必填/可选属性,以及属性使用的类型。它支持大小写敏感的部分名称匹配。"model_search
调用工具前可以说:"我来搜索模型,你可以看看返回结果是什么样的。"
[模型名称]从选中的API中选择一个代表性模型(参考下方示例),调用****,传入参数:
model_search- = 之前选中的API key(比如
key或paypal)spotify - = 检测到的项目语言
language - = 你选择的代表性模型名称
query
| API key | 合适的演示查询词 |
|---|---|
| |
| |
展示返回结果,重点说明:
- 准确的模型名称和描述
- 几个值得关注的带类型属性(区分可选/必填)
- 所有嵌套模型引用(比如)
PurchaseUnit[] | undefined
告知用户:
"你可以按名称搜索任何模型,也支持部分匹配。只要你需要了解[API名称]的某个模型的结构,随时都可以让我帮你查询。"
Phase 6 — Demonstrate endpoint_search
endpoint_search阶段6 — 演示endpoint_search
功能
endpoint_searchTell the user:
"Similarly,looks up any SDK method — the exact parameters, their types, the response type, and a fully runnable code sample you can drop straight into your project."endpoint_search
Before calling, say something like: "Let me fetch the endpoint so you can see the parameters and a live code sample."
[endpoint name]Pick a representative endpoint for the chosen API and call with an explicit argument object:
endpoint_search- : the API key you are demonstrating (for example,
keyorpaypal)spotify - : the endpoint / SDK method name you want to look up (for example,
queryorcreateOrder)getTrack - : the user's project language (for example,
languageor"typescript")"python"
For example:
API key ( | Endpoint name ( | Example |
|---|---|---|
| | user's project language |
| | user's project language |
| Display the result, pointing out: |
- The method name and description
- The request parameters and their types
- The response type
- The full code sample (present exactly as returned)
Tell the user:
"Notice that the code sample is ready to use — it imports from the correct SDK, initialises the client, calls the endpoint, and handles errors. You can search for any endpoint by its method name or a partial case-sensitive fragment."
告知用户:
的作用类似,它可以查询任何SDK方法:准确的参数、参数类型、响应类型,以及可以直接放到你的项目中运行的完整代码示例。"endpoint_search
调用工具前可以说:"我来获取端点的信息,你可以看看参数和实时代码示例。"
[端点名称]为选中的API选择一个代表性端点,调用****,传入明确的参数对象:
endpoint_search- :你正在演示的API key(比如
key或paypal)spotify - :你要查询的端点/SDK方法名称(比如
query或createOrder)getTrack - :用户的项目语言(比如
language或"typescript")"python"
示例:
API key ( | 端点名称 ( | 示例 |
|---|---|---|
| | 用户的项目语言 |
| | 用户的项目语言 |
| 展示返回结果,重点说明: |
- 方法名称和描述
- 请求参数和类型
- 响应类型
- 完整代码示例(完全按照返回内容呈现)
告知用户:
"你会发现代码示例是可以直接使用的——它包含正确的SDK导入、客户端初始化、端点调用和错误处理。你可以按方法名称或者大小写敏感的部分片段搜索任何端点。"
Phase 7 — Closing: what you can ask
阶段7 — 收尾:你可以请求的操作
End the tour with a summary list of things the user can now ask the agent to do. Present this as
a formatted menu:
游览结束时,总结用户现在可以向Agent请求执行的操作列表,展示为格式化菜单:
What you can do with this MCP
你可以用这个MCP实现的需求
Quickstart: your first API call
/integrate-context-matic Set up the Spotify TypeScript SDK and fetch my top 5 tracks.
Show me the complete client initialization and the API call./integrate-context-matic How do I authenticate with the Twilio API and send an SMS?
Give me the full PHP setup including the SDK client and the send call./integrate-context-matic Walk me through initializing the Slack API client in a Python script and posting a message to a channel.Framework-specific integration
/integrate-context-matic I'm building a Next.js app. Integrate the Google Maps Places API
to search for nearby restaurants and display them on a page. Use the TypeScript SDK./integrate-context-matic I'm using Laravel. Show me how to send a Twilio SMS when a user
registers. Include the PHP SDK setup, client initialization, and the controller code./integrate-context-matic I have an ASP.NET Core app. Add Twilio webhook handling so I can receive delivery status callbacks when an SMS is sent.Chaining tools for full integrations
/integrate-context-matic I want to add real-time order shipping notifications to my
Next.js store. Use Twilio to send an SMS when the order status changes to "shipped". Show me
the full integration: SDK setup, the correct endpoint and its parameters, and the TypeScript code./integrate-context-matic I need to post a Slack message every time a Spotify track changes
in my playlist monitoring app. Walk me through integrating both APIs in TypeScript — start by
discovering what's available, then show me the auth setup and the exact API calls./integrate-context-matic In my ASP.NET Core app, I want to geocode user addresses using
Google Maps and cache the results. Look up the geocode endpoint and response model, then
generate the C# code including error handling.Debugging and error handling
/integrate-context-matic My Spotify API call is returning 401. What OAuth flow should I
be using and how does the TypeScript SDK handle token refresh automatically?/integrate-context-matic My Slack message posts are failing intermittently with rate limit
errors. How does the Python SDK expose rate limit information and what's the recommended retry
pattern?"That's the tour! Ask me any of the above or just tell me what you want to build — I'll use this server to give you accurate, version-specific guidance."
快速入门:你的第一次API调用
/integrate-context-matic Set up the Spotify TypeScript SDK and fetch my top 5 tracks.
Show me the complete client initialization and the API call./integrate-context-matic How do I authenticate with the Twilio API and send an SMS?
Give me the full PHP setup including the SDK client and the send call./integrate-context-matic Walk me through initializing the Slack API client in a Python script and posting a message to a channel.指定框架的集成
/integrate-context-matic I'm building a Next.js app. Integrate the Google Maps Places API
to search for nearby restaurants and display them on a page. Use the TypeScript SDK./integrate-context-matic I'm using Laravel. Show me how to send a Twilio SMS when a user
registers. Include the PHP SDK setup, client initialization, and the controller code./integrate-context-matic I have an ASP.NET Core app. Add Twilio webhook handling so I can receive delivery status callbacks when an SMS is sent.链式调用工具实现完整集成
/integrate-context-matic I want to add real-time order shipping notifications to my
Next.js store. Use Twilio to send an SMS when the order status changes to "shipped". Show me
the full integration: SDK setup, the correct endpoint and its parameters, and the TypeScript code./integrate-context-matic I need to post a Slack message every time a Spotify track changes
in my playlist monitoring app. Walk me through integrating both APIs in TypeScript — start by
discovering what's available, then show me the auth setup and the exact API calls./integrate-context-matic In my ASP.NET Core app, I want to geocode user addresses using
Google Maps and cache the results. Look up the geocode endpoint and response model, then
generate the C# code including error handling.调试和错误处理
/integrate-context-matic My Spotify API call is returning 401. What OAuth flow should I
be using and how does the TypeScript SDK handle token refresh automatically?/integrate-context-matic My Slack message posts are failing intermittently with rate limit
errors. How does the Python SDK expose rate limit information and what's the recommended retry
pattern?"本次游览就到这里啦!你可以问我上面的任何问题,或者直接告诉我你想构建的功能——我会使用这个服务器为你提供准确的、适配版本的指导。"
Notes for the agent
Agent注意事项
- If the user picks an API that is not in the results, tell them it is not currently available and offer to continue the tour with one that is.
fetch_api - All tool calls in this skill are read-only — they do not modify the project, install packages, or write files unless the user explicitly asks you to proceed with integration.
- When showing code samples from or
endpoint_search, present them in fenced code blocks with the correct language tag.ask
- 如果用户选择的API不在的返回结果中,告知用户该API当前不可用,提议使用现有可用的API继续游览。
fetch_api - 本技能中的所有工具调用都是只读的——除非用户明确要求你继续集成,否则不会修改项目、安装包或者写入文件。
- 展示或
endpoint_search返回的代码示例时,请使用带正确语言标签的围栏代码块呈现。ask