mcpField
P
projectstate

projectstate

远程服务
projectstate.online记忆与知识07 周前更新

关于 projectstate

projectstate 是面向 AI Agent 的项目级持久记忆 MCP 服务,记录决策、失败尝试和待办事项。它通过排序检索和计划检查,为跨会话工作的 Agent 提供精简项目状态,并按调用使用 x402/USDC 付费。

主要功能

  1. 01记录决策、尝试、任务和备注
  2. 02按相关性检索并限制字符数
  3. 03计划检查提示历史失败与约束
  4. 04更新状态并替代旧决策
  5. 05通过 x402/USDC 按调用付费

适用场景

  1. 01在开始任务前检查相关失败记录
  2. 02跨会话交接项目状态和未完成任务
  3. 03让多个 Agent 共享项目决策记录

MCP 相关

它通过 Streamable HTTP 提供 MCP 服务,向客户端开放项目创建、状态管理、记录、检索和计划检查工具。调用通过 x402 使用 USDC 结算。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://projectstate.online/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

6
参数类型必填说明
nameany否
projectany否
descriptionany否

详细介绍

projectstate

为 AI Agent 提供持久化项目记忆,通过 x402 以 USDC 按次付费。无需账号或 API 密钥。

https://projectstate.online/mcp — 一个 MCP 服务(Streamable HTTP),按项目记住已作出的决定、尝试过但失败的事项,以及仍待解决的问题,并向 Agent 返回所需的三条事实,而不是完整历史记录。

为什么

每个 Agent 都已经有“记忆”。它们缺少的是能跨工具和会话留存的项目状态:Claude Code、Cursor、CI Agent 和脚本都在同一个仓库上工作,共享一份按重要性排序、简洁紧凑的决策与失败尝试记录。这正是本服务的用途。检索才是重点:recall 返回不超过几行内容,并控制在字符预算内;结果按优先级排序,已被取代的决定会靠后,仍有效的决定会靠前。

工具

工具功能价格
project_open(project, name?, description?)打开或创建项目;返回一份简报:状态、待办任务、最新决定和失败尝试$0.002
project_status(project, set_status?)读取或设置单行状态(用于在会话之间交接的备注)$0.002
remember(project, kind, title, body?, tags?, files?, status?, supersedes?, idempotency_key?)存储一条 decision、attempt、task 或 note$0.002
recall(project, query?, kind?, status?, tags?, files?, limit=5, max_chars=1500)按关键词排序搜索,并裁剪到预算范围内$0.005
plan_check(project, intent, files?, limit=3, max_chars=1200)说明你准备做什么;获取会影响计划的失败尝试、约束性决定和重叠任务$0.010
update(project, id, status?, title?, body?, append?, tags?, files?, delete?)关闭任务、标记尝试、取代决定$0.002

失败的调用免费。相同的重试(或任何具有相同 idempotency_key 的调用)绝不会重复收费。每种工具的价格均在 tools/list 的 _meta.priceUsd 中公布。

plan_check

开始非简单任务前应调用的工具:

plan_check(project="my-app", intent="switch the session cache to Redis", files=["src/cache.py"])

Plan check for 'my-app': 'switch the session cache to Redis'
Prior failures (1):
  #8 attempt/failed (2026-09-12): Tried Redis for the session cache — connection pool exhausted under load
Active decisions that constrain this (1):
  #9 decision/active (2026-09-12): Cache with SQLite instead of Redis — one less service to run
Open tasks that overlap (1):
  #10 task/open (2026-09-12): Benchmark the cache options

一次调用即可进行三次定向搜索,只返回会影响计划的内容。如果没有相关记录,结果会回答 “记录中没有与此计划匹配的内容”,这样 Agent 无需二次查询即可继续。

如何付款

  1. 调用工具。如果没有余额,结果会返回 isError: true,并在 structuredContent 中提供 x402 v2 PaymentRequired(方案 exact、Base 上的 USDC、金额和收款地址)。
  2. 签署 USDC 付款,然后在 _meta["x402/payment"] 中携带付款负载,重试同一调用。
  3. 结果会在 _meta["x402/payment-response"] 中附带结算收据,并在 _meta["projectstate/x402-credit"] 中附带余额令牌。
  4. 一笔付款即可购买余额(基于会话的连接为 $0.10,不使用会话时每次调用最低 $0.01)。后续调用会在会话中自动扣除余额,也可以通过 Authorization: Bearer xc_… 发送余额令牌。未用完的余额会保留在你的钱包地址上。

适用于任何支持 x402 的客户端:供 Vercel AI SDK 使用的 x402-mcp(withPayment())、x402 Python 包,或 scripts/x402_agent_demo.py 中仅 30 行的握手代码。

from eth_account import Account
from mcp import Client
from x402 import x402Client
from x402.mechanisms.evm.exact import register_exact_evm_client
from x402.mechanisms.evm.signers import EthAccountSigner
from x402.schemas import PaymentRequired

x = x402Client(); register_exact_evm_client(x, EthAccountSigner(Account.from_key(KEY)))
async with Client("https://projectstate.online/mcp") as mcp:
    r = await mcp.call_tool("project_open", {"project": "my-app"})       # -> PaymentRequired
    pay = (await x.create_payment_payload(PaymentRequired(**r.structured_content))).model_dump(by_alias=True, exclude_none=True)
    r = await mcp.call_tool("project_open", {"project": "my-app"}, meta={"x402/payment": pay})
    token = r.meta["projectstate/x402-credit"]                          # reuse on later calls

底层实现

Python 3.12、官方 MCP Python SDK(v2)、SQLite + FTS5(bm25,不使用向量)、面向 Base 主网 Coinbase facilitator 的官方 x402 包。单进程、单个 SQLite 文件,以及一个管理仪表板,提供各工具的延迟、错误消息、完整审计账本和检索质量指标(零结果命中率与重新查询率),用于判断关键词搜索何时不再够用。

文档:https://projectstate.online/docs · 注册表:online.projectstate/projectstate · 许可证:MIT

自行运行

deploy/install.sh 会在小型 Ubuntu VPS 上配置 systemd、nginx、fail2ban、每小时 SQLite 备份和无人值守升级;deploy/env.example 列出了所有设置;deploy/x402_live_setup.sh 会使用 Coinbase CDP 密钥将 x402 支付通道切换到 Base 主网。pytest tests/ 会运行 33 项测试,其中包括一个用于验证真实 EIP-712 签名的模拟 x402 结算器。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。