Token导航 LogoToken导航TokenDH.com
SCP Local MCP Server logo
AI代理未说明官方级别未说明来源级核验

SCP Local MCP Server

MCP Server

一个为AI助手提供安全访问客户数据的MCP服务器,通过Shopper Context Protocol(SCP)实现电子商务系统与AI助手之间的桥梁。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
本地服务器电子商务TypeScriptClaude数据安全Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

shopper-context-protocol

提供方

shopper-context-protocol

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

SCP本地MCP服务器

A. 模型上下文协议 (MCP) 服务器,为像Claude这样的AI助手提供通过(某种方式,原文中未明确说明具体方式,但根据上下文可理解为通过系统或平台)安全访问客户数据的功能 购物者情境协议 (特殊收容程序,SCP)。

这是什么?

这个MCP服务器充当了AI助手与实现SCP协议的电子商务系统之间的桥梁。它使Claude Desktop和其他MCP客户端能够:

  • 使用带有PKCE的OAuth 2.0安全授权访问客户账户
  • 📦 查看订单历史、积分、有效优惠和购物偏好
  • 🔍 通过DNS或知名URI发现商家的SCP端点
  • 🔒 在本地存储和管理加密的认证令牌

所有客户数据请求均需通过商家的SCP服务器进行身份验证和授权,以确保隐私和安全。

使用 npx 快速入门

使用这台服务器最简单的方法是通过 npx - 无需安装!

使用 Claude Desktop

添加到您的Claude桌面配置中(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "scp": {
      "command": "npx",
      "args": ["-y", "@shoppercontextprotocol/local-mcp-server"]
    }
  }
}

在Windows系统上,配置文件位于: %APPDATA%\Claude\claude_desktop_config.json

使用本地开发服务器进行测试

如果你正在本地开发一个SCP服务器,你可以将MCP服务器配置为指向你的测试端点:

{
  "mcpServers": {
    "scp": {
      "command": "npx",
      "args": ["-y", "@shoppercontextprotocol/local-mcp-server"],
      "env": {
        "SCP_TEST_ENDPOINT": "http://localhost:8787/v1"
      }
    }
  }
}

这绕过了DNS发现机制,并将所有请求直接导向您的本地测试服务器。

安装(备选方案)

对于开发用途,或者如果您更倾向于本地安装:

# Install globally
npm install -g @shoppercontextprotocol/local-mcp-server

# Or install locally for development
git clone 
cd local_mcp
npm install
npm run build

用法

使用Claude Desktop(本地安装)

{
  "mcpServers": {
    "scp": {
      "command": "scp-mcp-server"
    }
  }
}

或者使用本地构建:

{
  "mcpServers": {
    "scp": {
      "command": "node",
      "args": ["/absolute/path/to/local_mcp/dist/index.js"]
    }
  }
}

直接使用

# If installed globally
scp-mcp-server

# Or with local build
npm start

发展

npm run dev    # Watch mode
npm run build  # Production build
npm test       # Run tests

配置

服务器存储配置于 ~/.scp/config.json它将在首次运行时自动创建,并使用以下默认设置:

{
  "dns_resolver": "1.1.1.1",
  "dns_cache_ttl": 86400,
  "poll_interval": 2,
  "max_poll_attempts": 150,
  "token_refresh_threshold": 300,
  "request_timeout": 30000,
  "demo_mode": true,
  "demo_endpoint": "http://localhost:8787/v1"
}

配置选项

  • dns_resolver用于SCP端点发现的DNS服务器(默认:Cloudflare的1.1.1.1)
  • dns_cache_ttl发现的终端点缓存时长(以秒为单位)(默认:24小时)
  • poll_interval在OAuth流程中,两次轮询尝试之间的间隔时间(默认:2秒)
  • max_poll_attempts最大轮询尝试次数(默认:150次/5分钟)
  • token_refresh_threshold刷新令牌前几秒(默认:300秒/5分钟)
  • request_timeoutHTTP 请求超时时间(毫秒)(默认:30000 / 30 秒)
  • demo_mode启用演示模式(默认:true)
  • demo_endpoint在演示模式中使用的终端点(默认:http://localhost:8787/v1)

使用开发服务器进行测试

有多种方法可以将MCP服务器指向您的测试SCP服务器:

选项1:环境变量(推荐用于npx)

设定 SCP_TEST_ENDPOINT 当运行服务器时:

# Direct usage
SCP_TEST_ENDPOINT=http://localhost:8787/v1 scp-mcp-server

# With npx
SCP_TEST_ENDPOINT=http://localhost:8787/v1 npx @shoppercontextprotocol/local-mcp-server

# In Claude Desktop config (see Quick Start section above)

选项2:演示模式配置

编辑 ~/.scp/config.json:

{
  "demo_mode": true,
  "demo_endpoint": "http://localhost:8787/v1"
}

默认情况下,演示模式是启用的,并将所有SCP请求重定向到演示端点。这对于本地测试非常有用,无需设置DNS记录。

选项3:生产模式

为生产环境商家使用真实的基于DNS的发现机制:

{
  "demo_mode": false
}

优先顺序:

  1. SCP_TEST_ENDPOINT 环境变量(最高优先级)
  2. 演示模式配置
  3. 基于DNS的发现(最低优先级)

数据存储

  • 代币: ~/.scp/tokens.db ( SQLite,加密 )
  • 配置: ~/.scp/config.json

MCP 工具

  • scp_authorize - 授权访问商户
  • scp_check_authorization - 检查授权状态
  • scp_revoke_authorization - 撤销对商户的访问权限
  • scp_discover - 发现某个域的SCP端点

MCP Resources(公司名,可译为“MCP资源公司”或根据具体语境保留原名)

  • scp://{domain}/orders - 订单历史
  • scp://{domain}/loyalty - 忠诚度状态
  • scp://{domain}/offers - 活跃报价
  • scp://{domain}/preferences - 客户偏好
  • scp://{domain}/intents - 购物意图

如何在Claude桌面版中使用

在将MCP服务器添加到您的Claude桌面配置中并重启Claude后,您可以与支持SCP的商户进行交互:

首次:授权访问

Can you help me authorize access to my Boot Barn account? 
My email is customer@example.com

克劳德将使用 scp_authorize 工具用于:

  1. 发现bootbarn.com的SCP终端节点
  2. 使用魔法链接启动OAuth授权
  3. 魔法链接将发送至您的电子邮箱
  4. 轮询授权完成状态
  5. 在本地存储加密令牌

访问您的数据

一旦获得授权,您可以要求Claude检索您的数据:

What are my recent Boot Barn orders?
How many loyalty points do I have at Boot Barn?
Do I have any active offers or coupons?

克劳德将自动:

  • 使用存储的授权令牌
  • 如果刷新令牌即将过期,请更新它们
  • 从商户的SCP服务器获取数据
  • 以一种有用的形式呈现信息

检查授权状态

Am I authorized with Boot Barn?

撤销访问权限

Revoke my Boot Barn authorization

示例工作流程

以下是使用SCP在Claude Desktop中的完整示例:

你: “帮我使用 customer@example.com 账号授权 acmestore.com”

克劳德: *启动OAuth流程,向邮箱发送魔法链接*

你: *点击邮件中的魔法链接*

克劳德: *完成授权并确认成功*

你: “我下了什么订单?”

克劳德: *检索并显示订单历史*

你: “我还有有效的优惠券吗?”

克劳德: *显示可用优惠和促销活动*

工作原理:初始化说明

SCP MCP服务器在初始化阶段为Claude提供了内置指令,确保它无需任何额外提示即可正确使用SCP工具。

自动导航

当Claude Desktop连接到SCP服务器时,它会自动接收指令,指示其:

  1. 总是先检查授权 在访问任何客户数据之前,Claude将检查您是否已获得商家的授权
  2. 要你的邮箱 - 如果未授权,Claude 将请求您的电子邮件地址以开始 OAuth 流程
  3. 请求所有必要的权限范围 - 克劳德要求事先获得全面权限: ordersloyaltypreferencesintent:readintent:create
  4. 解释魔法链接的过程 - 克劳德告诉你检查你的电子邮件以获取授权链接
  5. 优雅地处理错误 - 如果出了什么问题,克劳德知道如何指导你解决它

为何这很重要

这个自动初始化意味着:

  • 无需手动配置 - 克劳德立刻就知道如何使用SCP工具
  • 一致的行为 - 每次对话都遵循相同的授权工作流程
  • ✅(表示正确、确认或完成的符号) 更好的用户体验 - 克劳德在尝试访问数据之前主动处理授权事宜
  • 错误更少 - 通过先检查授权,减少“未授权”错误

初始化流程

1. Claude Desktop starts and reads claude_desktop_config.json
2. Spawns the SCP MCP server (node dist/index.js or npx)
3. Sends initialize request to the server
4. Server responds with:
   - Server info (name, version)
   - Instructions for the LLM
   - Capabilities (tools, resources)
5. Claude reads the instructions and knows:
   ✓ Check authorization first
   ✓ Ask for email when needed
   ✓ Request all scopes upfront
   ✓ Create intents when users express shopping goals
6. Server is ready, Claude is ready with full context
7. User asks: "Show me my orders"
8. Claude follows the instructions:
   - Checks authorization
   - Asks for email if needed
   - Initiates OAuth flow
   - Retrieves and displays orders

提供的示例说明

在初始化过程中,克劳德(Claude)接收到以下指令:

IMPORTANT WORKFLOW:

1. AUTHORIZATION REQUIRED FIRST
   Before accessing ANY customer data, you MUST authorize with the merchant domain.
   
   Check authorization:
   - scp_check_authorization(domain="acmestore.com")
   
   If not authorized:
   - Ask user: "What email do you use with [Merchant]?"
   - Call: scp_authorize(domain="...", email="...", scopes=[...])
   - Tell user: "Please check your email for a magic link"

2. ACCESSING DATA
   Once authorized, use these tools:
   - scp_get_orders(domain="...") - Order history
   - scp_get_loyalty(domain="...") - Loyalty status
   - scp_get_preferences(domain="...") - Saved preferences
   - scp_get_intents(domain="...") - Shopping intents

3. CREATING INTENTS
   When user expresses a shopping goal, create an intent:
   - scp_create_intent(domain="...", base_intent="...", context={...})

REMEMBER:
✅ ALWAYS check authorization before accessing data
✅ Request comprehensive scopes upfront
✅ Create intents when users express shopping goals
❌ NEVER access data without authorization first

这确保了与SCP服务器的每一次交互都遵循最佳实践,并为用户提供流畅、安全的体验。

目录标签

目录标签

本地服务器电子商务TypeScriptClaude数据安全AI助手本地部署OAuth认证

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauthlocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP