关于 Settlemint
SettleMint 的 Model Context Provider 将 LLM、AI IDE 和 AI Agent 连接到 SettleMint 平台及已部署的用例。README 介绍 MCP 如何访问区块链上下文并执行操作,但未说明该项目的具体工具。
主要功能
- 01将 AI 应用连接到 SettleMint
- 02通过 MCP 访问区块链数据
- 03调用智能合约操作
- 04支持 AI 驱动的区块链工作流
适用场景
- 01为 AI 应用提供 SettleMint 上下文
- 02通过 AI Agent 查询区块链状态
- 03在 AI 工作流中执行智能合约操作
MCP 相关
该项目将 SettleMint 的 Model Context Provider 描述为连接 AI 应用与平台的桥梁。README 提供了区块链查询和操作的 MCP 通用示例,但未列出具体服务工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
SettleMint SDK
✨ https://settlemint.com ✨
轻松将 SettleMint 集成到您的应用程序中。
目录
关于
SettleMint Model Context Provider 提供了一种简单的方式,可将大模型、AI IDE 或 AI Agent 与 SettleMint 平台及您已部署的用例集成。
模型上下文协议(MCP)简介
模型上下文协议(MCP)是一种框架,旨在通过提供对外部数据的结构化、上下文感知访问,增强 AI Agent 和大模型(LLM)的能力。它充当 AI 模型与各种数据源之间的桥梁,例如区块链网络、外部 API、数据库和开发环境。从本质上说,MCP 允许 AI 模型从外部世界获取相关上下文,从而做出更充分的推理并进行交互。
MCP 并非单一工具,而是一种标准化协议。这意味着它定义了 AI 应如何请求信息,以及外部系统应如何响应。遵循这一标准后,不同的工具和系统就能以一致的方式与 AI Agent 通信。这样一来,AI 模型便能超越训练所得的知识,无缝地与实时数据和真实世界应用交互。
MCP 为何重要?
现代 AI 模型功能强大,但传统上以封闭系统的方式运行——它们根据从训练数据中学到的模式生成回答,却不了解外部系统的当前状态。缺乏实时上下文可能会成为一种局限。MCP 的重要性在于它弥合了这一差距,让 AI 能够实时感知上下文并采取行动。
以下是 MCP 的几个重要原因:
- 动态数据访问:MCP 让 AI 模型能够与外部生态系统(例如区块链网络或 Web API)无缝交互。这意味着 AI Agent 可以在运行时查询数据库或区块链账本以获取最新信息,而不是仅仅依赖过时的训练数据。
- 实时上下文:通过提供对数据(例如智能合约状态或应用状态)的结构化实时访问,MCP 确保 AI 的决策和回答基于世界的当前状态。这种上下文感知能力能带来更准确、更相关的结果。
- 扩展能力:借助 MCP,AI Agent 不仅能检索数据,还能执行操作。例如,AI 可以使用 MCP 触发区块链交易或更新记录。这能以精确的领域专属上下文增强 Agent 的决策能力,并赋予其据此采取行动的能力。
- 降低复杂性:MCP 为各种数据源提供统一接口,让开发者受益。AI Agent 无需为每个外部系统编写自定义集成代码,而是可以通过 MCP 这一统一通道访问多个数据源。这简化了开发流程并减少了错误。
总的来说,MCP 将 AI 与实时数据连接起来,并使其能够在外部系统中执行任务,从而让 AI 更了解情况、更灵活、更实用。这是迈向真正理解并与周围世界交互的 AI 的重要一步。
主要特性和优势
MCP 引入了几项关键特性,为 AI 开发者和终端用户带来了显著优势:
- 上下文感知:AI 模型能够按需访问实时信息和上下文。AI Agent 不再孤立运行,而是可以请求特定数据(例如“区块链上的最新区块是什么?”或“从数据库获取用户资料”),并利用这些上下文调整回答。这能带来更准确、更符合具体情况的结果。
- 区块链集成:MCP 可直接连接链上数据和智能合约功能。AI Agent 可以查询区块链状态(例如检查代币余额或读取合约变量),甚至通过 MCP 调用合约方法。这为 AI 管理区块链操作、DeFi 自动化等开启了更多可能,而且这一切都通过标准化接口实现。
- 自动化能力:借助对外部系统的结构化访问,AI Agent 不仅可以读取数据,还可以采取行动。例如,AI 可以自动调整智能合约参数、发起交易,或更新代码库中的配置文件。这些自动化能力使得创建智能 Agent 成为可能,让它们能够在指定准则下自主管理基础设施或应用。
- 安全与控制:MCP 在设计时就考虑了安全性(后文将进一步介绍)。它提供了一个受控环境,可以监控对外部数据和操作的访问,并将其置于沙盒中。这确保 AI Agent 只执行获准的操作,并可通过 MCP 框架中的身份验证和权限管理来保护敏感数据。
这些特性相结合,大幅拓展了 AI Agent 的能力。它让被动的模型转变为能够感知并影响外部系统的主动参与者——所有操作都以安全、结构化的方式进行。
MCP 的工作原理
核心概念
MCP 的核心作用是充当 AI 模型与外部数据源之间的中间件。MCP 不会将所有可能的知识和工具都嵌入 AI,而是让 AI 模型保持精简,并将数据获取和执行任务交给外部服务。AI 与 MCP 通过定义好的协议进行通信:
- AI Agent(客户端):AI Agent(例如大模型或任何由 AI 驱动的应用)会提出信息请求或操作请求。该请求采用 MCP 能够理解的标准格式。例如,AI 可能会询问:“获取区块链 Z 上智能合约 Y 中变量 X 的值”,或“从项目目录中获取文件 ABC 的内容。”
- MCP 服务(中介):MCP 服务接收并解析请求。它充当中介,负责连接各种外部系统。服务会确定请求需要哪个外部来源(区块链、API、文件系统等),并使用相应的连接器或处理程序来满足查询。
- 外部数据源:可以是区块链节点、API 端点、数据库,甚至是本地开发环境。MCP 服务会与外部数据源通信,例如发起 API 调用、查询区块链节点或读取磁盘上的文件。
- 上下文响应:外部数据源会返回请求的数据(或操作结果)。然后,MCP 服务将这些信息整理成结构化响应,方便 AI Agent 理解。这可能涉及将原始数据转换为更简单的 JSON 结构或文本格式。
- 返回给 AI:MCP 服务将整理后的数据发送回 AI Agent。AI 随后可以将这些数据纳入推理,或基于这一新上下文继续工作流。从 AI 模型的角度来看,这就像是刚刚扩展了自身知识,或成功执行了一项外部操作。
MCP 的优势在于,它屏蔽了不同数据源之间的差异。AI Agent 无需了解如何调用区块链或查询数据库,只需发出通用请求,剩下的工作由 MCP 处理。这种模块化方法意味着,可以为 MCP 添加新的连接器以支持更多数据源,而无需更改 AI 构造请求的方式。
技术工作流
让我们逐步了解使用 MCP 的典型技术工作流:
- AI 发出请求:AI Agent 使用 MCP SDK 或 API 发送请求。例如,在代码中,它可能会调用类似 mcp.fetch("settlemint", "getContractState", params) 的方法,其中 "settlemint" 可以指定目标 MCP 服务或上下文。
- MCP 解析请求:MCP 服务(在本例中可能是 SettleMint MCP 服务)接收请求。请求将包含所需操作的标识符,以及必要的参数(例如所需的区块链网络、合约地址或文件路径)。
- 激活连接器:MCP 根据请求类型选择合适的连接器或模块。对于区块链查询,它可能会使用配置了网络访问权限和凭据的区块链连接器。对于文件系统查询,则会使用指定路径的文件连接器。
- 检索数据/执行操作:MCP 执行操作。如果是检索数据,它会获取数据:例如,调用区块链节点的 API 获取合约状态,或读取本地文件。如果是执行操作(例如执行交易或写入文件),则会使用其拥有的凭据和上下文来执行该操作。
- 格式化数据:原始结果通常采用特定于来源的格式(例如 Web API 返回的 JSON、文件中的二进制数据等)。MCP 会将结果格式化或序列化为标准格式(通常是 JSON 或文本表示),以便 AI 模型轻松处理。它还可能包含元数据,例如时间戳或成功/失败状态。
- 向 AI 返回响应:MCP 将格式化后的响应发送回 AI Agent。在实践中,这可以是 SDK 函数调用的返回值,也可以是在联网设置下通过 WebSocket 或 HTTP 发送的消息。
- AI 继续处理:借助新数据,AI 可以调整计划、生成信息更充分的回答,或触发后续操作。例如,如果有人询问 AI 某位用户的区块链余额,AI 现在就能从 MCP 获取该余额,并在回答中提及。如果 AI 正在自主管理某项事务,则可能会根据数据决定下一步操作。
此工作流执行迅速,通常在后台进行。从宏观角度来看,MCP 可即时扩展 AI 的能力。AI 继续专注于决策和语言生成,而 MCP 则负责从外部系统获取数据并执行命令等繁重工作。
核心组件
MCP 由几个协同工作的核心组件组成,共同实现上述工作流:
flowchart LR
A[AI Agent / LLM] --(1) request--> B{{MCP Server}}
subgraph MCP Server
B --> C1[Blockchain Connector]
B --> C2[API Connector]
B --> C3[File System Connector]
end
C1 -- fetch/query --> D[(Blockchain Network)]
C2 -- API call --> E[(External API/Data Source)]
C3 -- read/write --> F[(Local File System)]
D -- data --> C1
E -- data --> C2
F -- file data --> C3
B{{MCP Server}} --(2) formatted data--> A[AI Agent / LLM]
- MCP 服务:这是运行并监听 AI Agent 请求的核心服务或守护进程。可以将它视为 MCP 的大脑,负责协调一切。MCP 服务经过配置,可了解各种数据源以及如何连接到它们。实际使用中,你可以在本地或服务器上运行 MCP 服务进程,AI Agent 则通过 API(例如 HTTP 请求、RPC 调用或 SDK)与其通信。
- MCP SDK / 客户端库:为简化使用,MCP 提供了多种编程语言的 SDK。开发者会在 AI Agent 代码中引入这些 SDK。SDK 负责处理与 MCP 服务的通信细节,因此开发者只需调用函数或方法(例如 mcp.getData(...)),无需手动构造网络调用。SDK 会确保请求格式正确并将其发送到 MCP 服务,然后接收响应并交给 AI 程序。
- 连接器 / 适配器:这些是 MCP 服务中的模块或插件,了解如何与特定类型的外部系统通信。一个连接器可能负责区块链交互(包含用于 Ethereum、Hyperledger 等的子模块),另一个可能负责 Web API(执行 HTTP 调用),还有一个可能管理本地 OS 操作(文件系统访问、运行 Shell 命令)。每个连接器都了解其领域的一组操作和数据格式。连接器让 MCP 具备可扩展性——可以添加新的连接器,以支持新的系统或协议。
- 配置文件:MCP 通常使用配置(例如 JSON 或 YAML)来确定要启用哪些连接器,以及如何连接到外部服务。例如,你可以在 MCP 实例中配置区块链节点的 URL、外部服务的 API 密钥或文件路径权限。通过配置,MCP 服务在运行时就能获得安全、正确地处理请求所需的信息。
- 安全层:由于 MCP 可以访问敏感数据并执行操作,因此它包含一个安全层。这可能涉及 API 密钥(例如示例中的 --pat 个人访问令牌),或连接区块链和数据库时使用的身份验证。安全层还会强制执行权限:它可以限制 AI Agent 通过 MCP 执行的操作,以防止滥用。例如,你可以允许对某些数据进行只读访问,但不允许在未经额外批准的情况下执行任何写入或更改状态的操作。
这些组件共同使 MCP 稳健而灵活。职责分离(AI、MCP 和连接器)意味着各部分可以独立演进或维护。例如,如果出现新的区块链,你可以为其添加连接器,而无需更改 AI 请求数据的方式。或者,即使 AI 模型更新,也仍然可以像以前一样使用相同的 MCP 服务和连接器。
SettleMint 对 MCP 的实现
SettleMint 是领先的区块链集成平台,已采用并实现 MCP,赋能 AI Agent,使其具备区块链智能和基础设施控制能力。在 SettleMint 的实现中,MCP 充当 AI 驱动的应用与由 SettleMint 平台管理或监控的区块链环境之间的桥梁。这意味着 AI Agent 不仅可以深入访问区块链资源(如智能合约、交易和网络数据),还可以通过标准化接口访问底层基础设施(节点、中间件)。
借助 MCP,SettleMint 支持以下场景:
- AI 助手可以实时查询链上数据,例如获取智能合约的状态或最新区块信息。
- 自主 Agent 可以在 AI 决策的指导下,无需人工干预即可管理区块链基础设施任务(部署合约、调整配置)。
- 使用 SettleMint 的开发者可以相对轻松地将高级 AI 功能集成到区块链应用中,因为 MCP 负责处理连接这两个领域的繁重工作。
sequenceDiagram
participant AI as AI Model (Agent)
participant MCP as MCP Server
participant Chain as The Graph / Portal / Node
participant API as External API
AI->>MCP: (1) Query request (e.g., get contract state)
Note over AI,MCP: AI asks MCP for on-chain data
MCP-->>AI: (2) Acknowledgement & processing
MCP->>Chain: (3) Fetch data from blockchain
Chain-->>MCP: (4) Return contract state
MCP->>API: (5) [Optional] Fetch related off-chain data
API-->>MCP: (6) Return external data
MCP-->>AI: (7) Send combined response
Note over AI,MCP: AI receives on-chain data (and any other context)
AI->>MCP: (8) Action request (e.g., execute transaction)
MCP->>Chain: (9) Submit transaction to blockchain
Chain-->>MCP: (10) Return tx result/receipt
MCP-->>AI: (11) Confirm action result
总而言之,SettleMint 的 MCP 版本扩展了其平台的功能,支持由 AI 驱动的区块链操作。这种结合将区块链的可信度和透明性与 AI 的适应性和智能相融合。
功能与特性
SettleMint 的 MCP 实现提供了丰富的功能,专为区块链与 AI 集成而设计:
- 无缝 IDE 集成:SettleMint 的工具可在常见的开发环境中使用,这意味着你可以在开发工作流中使用 MCP。例如,如果你正在编写智能合约或应用,AI Agent(如代码助手)可以通过 MCP 在 IDE 中直接获取区块链状态或部署合约。这让你在编写代码时即可获得实时的区块链反馈并执行操作,从而简化开发流程。
- 自动化合约管理:AI Agent 可以通过 MCP 自主与智能合约交互,甚至对其进行修改。这包括部署新合约、调用现有合约的函数或监听事件。例如,AI 运维 Agent 可以检测到 DeFi 合约中的异常,并通过 SettleMint 使用 MCP 自动触发该合约中的安全防护函数。
- AI 驱动的分析:AI 模型可以通过 MCP 分析区块链数据,从中获取洞察并作出预测。SettleMint 平台可以通过 MCP 将交易历史、代币流动或网络指标提供给专用于分析的 AI 模型。随后,AI 可以识别欺诈交易模式或预测网络拥堵,并将这些洞察反馈给区块链应用或管理员。
这些功能表明,SettleMint 对 MCP 的集成并非只是与区块链建立基本连接,而是一套全面的工具,使 AI 能够以有意义的方式访问区块链数据并进行控制。它通过让 AI 持续监控并响应链上事件,有效地赋予区块链网络智能。
AI 和区块链中的用法
通过 MCP 结合 AI 和区块链的优势,SettleMint 解锁了多个强大的用例:
- AI 驱动的智能合约管理:智能合约通常需要根据外部条件(如市场价格或使用负载)进行调整或更新。AI Agent 可以通过 SettleMint 的工具使用 MCP 监控这些条件,并主动调整智能合约参数(或建议人类进行调整)。这能打造更具适应性和韧性的区块链应用。
- 实时区块链监控:想象一下,不再使用静态仪表板,而是由 AI 监控区块链交易,并在重要事件发生时向你发出提醒。借助 MCP,AI 可以持续查询链上的特定模式(如大额转账或特定合约事件),然后分析并向用户解释这些情况,或触发自动响应。
- 自主治理:在区块链治理(例如 DAO)中,AI 洞察可以为提案和决策提供依据。借助 MCP,AI Agent 可以收集与提案影响相关的所有链上数据,模拟不同结果,甚至自动在区块链上投票或执行已批准的决策。这将 AI 决策支持与区块链的执行能力结合起来。
- 跨系统编排:SettleMint 的 MCP 不必局限于区块链数据。AI 可以使用它来编排跨越区块链和链下系统的操作。例如,AI Agent 可能会检测到供应链货运(在区块链上跟踪)延误,然后通过 MCP 更新链下数据库或向物流系统发送通知。AI 作为智能中间件,利用 MCP 确保区块链系统和传统系统保持同步。
实际上,将 MCP 与 SettleMint 的 SDK(下文将介绍)结合使用,可以更轻松地实现这些场景。开发者可以专注于 AI 应执行的高层逻辑,而 MCP 层(由 SettleMint 平台管理)则负责处理连接区块链和其他服务的复杂工作。
实际示例
为了加深理解,我们来看一些具体示例,了解如何在开发工作流和应用中使用 MCP,尤其是结合 SettleMint 的工具。
在开发工作流中实现 MCP
假设你是一名区块链项目开发者,希望使用 AI 助手帮助管理智能合约。你可以将 MCP 集成到工作流中,让 AI 助手直接访问项目上下文(代码、文件)和区块链环境。
例如,你可以使用一条命令(通过 CLI 或 npm 脚本)启动 MCP 服务,并指定项目目录,同时连接到 SettleMint 平台。命令示例如下:
npx -y @settlemint/sdk-mcp@latest --path=/Users/llm/asset-tokenization-kit/ --pat=sm_pat_xxx
这条命令的作用如下:
- 使用 npx 执行最新版本的 @settlemint/sdk-mcp 软件包,无需单独安装。
- --path=/Users/llm/asset-tokenization-kit/ 指定 MCP 服务可访问上下文的本地项目目录。这样,AI 就可以通过 MCP 查询该目录中的文件或代码,并访问
settlemint connect中的环境设置。 - --pat=sm_pat_xxx 提供用于向 SettleMint 服务进行身份验证的个人访问令牌(PAT)。MCP 服务需要此令牌(此处将其隐藏为 xxx)才能代表你连接到 SettleMint 平台。
运行此命令后,你会启动一个本地 MCP 服务,同时连接到本地项目和 SettleMint 平台。随后,你的 AI 助手(例如基于 Claude Sonnet 的专用 Agent)便可以:
- 根据你索引的数据(例如 The Graph 中的数据),让 MCP 编写表单和列表。
- 查询实时区块链,获取你正在开发的合约的当前状态,以验证某些内容或测试更改。
- 在你的网络中部署一个额外的节点。
- 在你的稳定币合约中列出并随后铸造一些新代币。
这极大地增强了开发工作流,让 AI 成为积极参与者,能够获取真实信息并据此采取行动,而不只是被动地提供代码建议。
在 Cursor 中使用 SettleMint MPC
Cursor(0.47.0 及更高版本)提供了全局 ~/.cursor/mcp.json 文件,可用于配置 SettleMint MCP 服务。将路径指向你的程序文件夹,并设置个人访问令牌。
我们使用全局 MCP 配置文件,是因为个人访问令牌绝不应该被提交到 Git 中。而将其放在项目文件夹中(Cursor 也支持这种方式)则会带来这种风险。
{
"mcpServers": {
"settlemint": {
"command": "npx",
"args": [
"-y",
"@settlemint/sdk-mcp@latest",
"--path=/Users/llm/asset-tokenization-kit/",
"--pat=sm_pat_xxx"
]
}
}
}
打开 Cursor 并前往 Settings/MCP。服务成功连接后,你应该会看到绿色的活动状态。
在 Claude Desktop 中使用 SettleMint MPC
打开 Claude desktop 并前往 Settings。在 Developer 选项卡下,点击 Edit Config 打开配置文件,并添加以下配置:
{
"mcpServers": {
"settlemint": {
"command": "npx",
"args": [
"-y",
"@settlemint/sdk-mcp@latest",
"--path=/Users/llm/asset-tokenization-kit/",
"--pat=sm_pat_xxx"
]
}
}
}
保存配置文件并重启 Claude desktop。在新聊天界面中,你应该会看到一个锤子(MCP)图标,其中显示了新添加的 MCP 服务。
在 Cline 中使用 SettleMint MPC
在 VS Code 中打开 Cline 扩展并点击 MCP Servers 图标。点击 Configure MCP Servers 打开配置文件,并添加以下配置:
{
"mcpServers": {
"settlemint": {
"command": "npx",
"args": [
"-y",
"@settlemint/sdk-mcp@latest",
"--path=/Users/llm/asset-tokenization-kit/",
"--pat=sm_pat_xxx"
]
}
}
}
保存配置文件。Cline 应会自动重新加载配置。服务成功连接后,你应该会看到绿色的活动状态。
在 Windsurf 中使用 SettleMint MPC
打开 Windsurf 并前往 Cascade 助手。点击锤子(MCP)图标,然后点击 Configure 打开配置文件,并添加以下配置:
{
"mcpServers": {
"settlemint": {
"command": "npx",
"args": [
"-y",
"@settlemint/sdk-mcp@latest",
"--path=/Users/llm/asset-tokenization-kit/",
"--pat=sm_pat_xxx"
]
}
}
}
保存配置文件,然后在 Cascade 助手中点击 Refresh 重新加载。服务成功连接后,你应该会看到绿色的活动状态。
AI 驱动的区块链应用或 Agent
为了说明一个真实场景,我们来看一个 AI 驱动的去中心化金融(DeFi)应用。在 DeFi 中,情况变化迅速(价格、流动性、用户活动),因此必须快速响应。
场景:你有一个管理自动流动性池的智能合约。你希望确保流动性池保持平衡——如果某项资产的价格下跌或流动性池失衡,你希望自动调整费用或参数。
在此场景中使用 MCP:
- AI Agent 通过 MCP 监控流动性池。每隔几分钟,它就会通过 MCP 服务请求最新的流动性池余额和外部价格数据(来自链上或链下预言机)。
- MCP 获取区块链上的最新状态(流动性池储备、近期交易),也可能调用外部价格 API 获取当前市场价格,然后将这些数据返回给 AI。
- AI 分析数据。假设它发现资产 A 在流动性池中的占比相对于资产 B 大幅增加(可能是因为资产 A 的价格急剧下跌)。
- AI 决定,为了保护流动性池,应暂时提高兑换费(这是防止套利者抽干流动性池的常见措施)。
- AI 通过 MCP 调用智能合约中的函数来更新费用参数。MCP 的区块链连接器负责通过 SettleMint 的基础设施创建交易并将其发送到网络。
- 交易在链上执行,费用随之调整。MCP 捕获成功响应以及任何相关事件(例如合约可能发出的费用变更事件)。
- AI 收到确认后,可以记录此次变更,或告知管理员它已采取行动。
在此用例中,MCP 使 AI 能够实时守护 DeFi 合约。如果没有 MCP,AI 将无法访问实时链上状态,也无法执行变更。借助 MCP,AI 成为一个强大的自主 Agent,确保区块链应用能够根据当前情况进行调整。
这只是一个示例。AI 驱动的区块链应用可以涵盖各种场景,从自动化 NFT 市场管理、DAO 提案的 AI 审核员,到能够响应传感器数据的智能供应链合约。MCP 为这些 AI Agent 提供了通信和行动的途径,让它们能够在关键之处发挥作用——在区块链及其连接的系统上。
贡献
我们欢迎社区贡献!请查看我们的贡献指南,了解如何通过提交错误报告、功能请求、文档更新或代码贡献来帮助改进 SettleMint SDK。
许可证
SettleMint SDK 根据 FSL Software License 发布。有关详情,请参阅 LICENSE 文件。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。