AI助手服务市场

一个集成在AI助手对话中的服务市场,允许用户浏览服务、检查信用余额、运行服务并请求访问,无需离开聊天界面。

  • by kkkpeckkk
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 ametyst-dev/alpic-mcp

使用说明

Ametyst MCP

MCP服务器内置 天桥 这将Ametyst的服务市场直接带入您的AI助手对话中。

用户可以浏览可用的服务,检查他们的信用余额,使用自然语言查询运行服务,并请求访问——所有这些都不需要离开聊天室。

实时应用程序: https://alpic-mcp-b31bca29.alpic.live/mcp


它做什么

该应用程序公开了一个嵌入式小部件(ametyst-console)它在ChatGPT或Claude对话中呈现为紧凑的白色卡片。

通过小部件,用户可以:

  1. 浏览服务 --获取Ametyst服务目录(名称、端点、成本)
  2. 支票余额 --用进度条显示可用积分和支出限额
  3. 运行服务 --选择一个服务,键入查询,点击运行。结果通过以下方式注入到对话中 useSendFollowUpMessage 因此LLM可以继续工作流程
  4. 请求访问 --在不离开聊天室的情况下提交信用或访问请求

建筑

server/src/index.ts          # MCP server — tools + widget registration
web/src/widgets/
  ametyst-console.tsx        # Main widget (inline card, no fullscreen)
web/src/helpers.ts           # generateHelpers<AppType>() — typed hooks

工具

工具 说明
ametyst-console Widget——打开嵌入式服务控制台
find-services 返回完整的服务目录
get-balance 退货余额+支出限额
get-transactions 返回最近的交易历史记录
spend 执行服务并扣除积分
request-access 提交访问或信用请求

小部件流(花快乐的路)

  1. find-services({}) --汽车被召唤
  2. 用户选择服务→ 明细卡+查询字段内联显示
  3. 用户类型查询→ hits 跑
  4. spend({ serviceId, query }) --呼叫商家,返回结果
  5. useSendFollowUpMessage 火灾→ LLM读取工具输出并在聊天中显示结果

本地开发

npm install
npm run dev
  • 小部件开发工具: http://localhost:3000/
  • MCP端点: http://localhost:3000/mcp

要在ChatGPT或Claude内部进行测试,请暴露本地服务器:

alpic tunnel --port 3000

然后将隧道URL添加为ChatGPT中的连接器(<tunnel-url>/mcp)或者克劳德。


部署

npm run build
npx alpic deploy --project-name alpic-mcp .

将GitHub仓库连接到Alpic,以便在每次推送时自动部署:

npx alpic git connect --yes .

环境变量

变量 默认值 描述
EXA_MERCHANT_URL https://alpic-mor-production.up.railway.app EXA商家的基本URL
EXA_SEARCH_PATH /api/exa-search 在商家上搜索EXA的POST路径
EXA_USE_MOCK 0 设置为 1 始终使用模拟数据(跳过HTTP)
EXA_STRICT_MERCHANT 0 设置为 1 禁用模拟回退

内置于

  • 天桥 --MCP服务器+小部件框架
  • Alpic --托管和部署
  • 铁路 --EXA商户后端
  • React 19、TypeScript、Vite、Zod