Token导航 LogoToken导航TokenDH.com
Excalibur MCP logo
运维云端stdio官方级别未说明来源级核验

Excalibur MCP

MCP Server

通过AI代理快速发布富文本推文到X(Twitter),并通过比特币闪电网络微支付实现商业化。

工具数

33

提示词数

0

GitHub Stars

3

资源数

0
PythonAI代理云端部署

安装说明

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

作者 / 组织

lonniev

提供方

lonniev

最后核验

2026/5/17 20:20

运行时

Python

快速接入

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

命令预览

python -m venv .venv

详细介绍

eXcalibur MCP

通过人工智能代理向X(推特)快速发布漂亮的推文,获利 通过DPYC(TM)Tollboot协议进行比特币闪电微支付。

](https://github.com/lonniev/excalibur-mcp) ![Python](https://python.org) ![License](LICENSE)

eXcalibur是一个 FastMCP 服务器允许 AI代理通过丰富的Unicode格式和可选图像发布到X(推特)。 X的赞助人身份验证使用OAuth2授权码+PKCE——否 聊天中会显示凭据。操作员凭据(X个应用程序密钥、BTCPay)到达 通过人在环安全快递,并存储在操作员的 每个操作员的霓虹保险库模式。工具调用按以下方式计量 收费站DPYC(TM) 预先资助 闪电平衡——不要骚扰你的客户。

部分 DPYC(TM)荣誉链.

入门指南

通过FastMCP Cloud连接——无需本地安装:

https://www.fastmcp.cloud/mcp/lonniev/excalibur-mcp

第一步:检查会话

呼叫 excalibur_session_status 查看您当前的会话状态。如果你有 一个有资助学分的活跃会话,你已经准备好发布了。

步骤2:X OAuth2+PKCE(X的赞助人凭据)

  1. 获取您的Nostr npub——使用dpyc预言机 how_to_join() 工具或任何

诺斯特客户。

  1. 呼叫 excalibur_begin_oauth(npub=) --返回a authorize_url.

打开主 authorize_url (不是短链接)在您的浏览器和 在X上授权应用程序。

  1. 呼叫 excalibur_check_oauth_status(npub=) --完成代码

交换、保管代币并激活您的会话。

会话由npub设置密钥。代币存储在Neon保险库中 到期时自动刷新。

步骤3:安全快递(操作员凭据)

操作员凭据(X OAuth2应用程序密钥、BTCPay连接)通过以下方式传递 安全快递(service="excalibur-operator").这是一个人在循环中 流程:操作员有意识地通过其 诺斯特客户。开 receive_credentials,继电器DM被破坏性地排空 --凭证在收到后仅存在于霓虹灯保险库中。

学分模型

工具调用成本 api_sats 每次通话。学分有 tranche_lifetime -- 每次购买都会创建一个在配置的生命周期后到期的批次。 身份验证和平衡工具始终是免费的。使用 excalibur_check_balance 看 您的余额和分期付款到期。通过充值 excalibur_purchase_credits.

可用工具

标准工具(来自车轮)

标准DPYC(TM)工具由注册 register_standard_tools()dpyc收费站这些包括 会话管理、信用操作、安全快递、定价、公证、, Oracle代表团。每个工具都由确定性UUID v5标识。

类别工具
会话和计费session_status, check_balance, account_statement, account_statement_infographic, restore_credits, service_status, check_price, check_authority_balance
安全快递request_credential_channel, receive_credentials, forget_credentials
Npub证明request_npub_proof, receive_npub_proof
购买purchase_credits, check_payment
定价和限制get_pricing_model, set_pricing_model, reset_pricing_model, list_constraint_types
公证notarize_ledger, list_notarizations, get_notarization_proof
入职培训get_operator_onboarding_status, get_patron_onboarding_status
Oracle(委托)oracle_about, oracle_how_to_join, oracle_lookup_member, oracle_get_tax_rate, oracle_network_advisory

域工具(特定于eXcalibur)

工具成本描述
begin_oauth免费启动X OAuth2授权码+PKCE流;回报 authorize_url
check_oauth_status免费完成浏览器授权并将代码兑换为令牌
post_tweet从价以标记为Unicode富文本格式发布到X
post_tweet_image从价发布带有图像URL或SVG横幅(渲染为PNG)的帖子

所有需要 npub 也接受a proof: str 参数 kind-27235 Schnorr证明。

安全

  • Npub身份 --赞助人由Nostr公钥标识(npub),

不是电子邮件或密码。每个角色一个密钥对,由用户管理。

  • Kind-27235防腐蚀 --工具调用带有NIP-98风格的Schnorr

证明调用者控制所声称的npub的签名。证据已缓存 约1小时;通过以下方式续订 request_npub_proof / receive_npub_proof.

  • 人在环安全快递 --凭证传递需要

操作员通过Nostr DM进行有意识的批准。收到后,中继消息为 被破坏性地耗尽,所以秘密只存在于加密的霓虹灯保险库中。

  • 按操作员Neon模式 --每个操作员的凭据都存储在

具有专用LOGIN角色的隔离Postgres模式。无交叉操作员 访问。

建筑

src/excalibur_mcp/
  server.py        FastMCP server -- domain tools + register_standard_tools()
  config.py        Pydantic settings from environment variables
  oauth_flow.py    X-specific OAuth2 Authorization Code + PKCE wrapper
  vault.py         In-memory Bearer token session cache (keyed by npub)
  x_client.py      X API v2 client with OAuth 2.0 Bearer token auth
  formatter.py     Markdown -> Unicode rich text (bold, italic, headers)
  actor.py         OperatorProtocol implementation for tool catalog

关键设计选择:

  • OAuth2授权码+PKCE --通过浏览器获得的赞助人代币

流动。 begin_oauth 返回主 authorize_url (不是短链接); check_oauth_status 完成交换。存储在Neon保险库中的代币, 到期时自动刷新。没有OAuth 1.0a。

  • UUID v5工具标识 --每个工具(标准和领域)都有一个

从其功能名称导出的确定性UUID。定价、约束、, 并根据UUID对所有密钥进行计费。

  • 车轮上的标准工具 -- register_standard_tools() 提供

所有DPYC(TM)基础设施工具。只有特定于域的X/Twitter工具 定义于 server.py.

  • Markdown到Unicode --转换 **bold**, *italic*,以及 # headers

在推文中呈现的Unicode字符没有标记语法。

自我寄宿

环境变量

DPYC(TM)身份(启动时需要)

变量必填描述
TOLLBOOTH_NOSTR_OPERATOR_NSEC操作员用于身份引导和DM加密的Nostr密钥

这是启动所需的唯一环境变量。所有其他秘密(X个应用密钥, BTCPay凭证)通过Secure Courier凭证模板到达 存储在每个操作员的Neon保险库模式中。

操作员凭据(通过Secure Courier)

这些通过安全快递交付(service="excalibur-operator"),不 设置为环境变量:

凭证说明
client_idX OAuth2客户端ID(来自X开发人员门户)
client_secretX OAuth2客户端密码(来自X开发者门户)
btcpay_hostBTCPay服务器URL
btcpay_store_id发票的店铺ID
btcpay_api_key具有发票权限的API密钥

认证运营商通过以下方式从管理局引导他们的Neon数据库URL 加密的Nostr DM-- NEON_DATABASE_URL 不会从环境中读取。

可选调整

变量描述
TOLLBOOTH_NOSTR_RELAYS逗号分隔的中继URL(覆盖默认值)
SEED_BALANCE_SATS新用户的新手积分(默认值:0)
DPYC_REGISTRY_CACHE_TTL_SECONDS缓存DPYC社区注册表的时间(默认值:300)
CONSTRAINTS_ENABLED"true" 在工具调用上启用约束引擎评估

故障排除

冷启动

在部署后的第一次请求时,服务可能需要几秒钟才能 初始化Neon连接并加载定价模型。运行时句柄 这是内联重试——调用者在预热后收到结果 完成,而不是“服务不可用”错误。

凭证生命周期状态

与凭证相关的响应以清晰的方式描述了当前的生命周期状态 指导,而不是错误消息:

状态含义下一步
no_session无法识别npub呼叫 session_status 与你的npub
awaiting_oauthOAuth流已启动,浏览器尚未授权打开 authorize_url 并授权
awaiting_courier安全快递通道已打开,尚未收到凭据通过Nostr客户端使用JSON凭据进行回复
proof_expiredNpub证明缓存已过期(约1小时)调用 request_npub_proof 然后 receive_npub_proof
insufficient_balance信用额度用尽或部分到期致电 purchase_credits 充值

常见的工具调用情况

  • “需要证据” --呼叫 request_npub_proof 然后

receive_npub_proof 证明npub的所有权。缓存将在~1后过期 小时;以新的请求/接收周期续订。

  • “信用余额不足” --呼叫 purchase_credits 充值。

检查付款到期情况 check_balance.

  • “未配置操作员凭据” --操作员设置问题,而不是

赞助人的问题。

不要骚扰你的客户: 不要要求顾客重新认证, 重新授权或重新执行OAuth,除非响应明确指出上游 令牌已过期或无效。

发展

# Install in development mode
cd excalibur-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"

# Run tests
.venv/bin/pytest tests/

# Type checking
mypy src/excalibur_mcp/

# Formatting
black src/ tests/
ruff check src/ tests/

DPYC(TM)生态系统

商标

DPYC、Tollboot DPYC和Don't Pester Your Customer是 朗尼·万赞特。请参阅 商标.md 在dpyc社区存储库中获取使用指南。

许可证

Apache许可证2.0——请参阅 许可证 了解详情。

目录标签

目录标签

PythonAI代理云端部署推特发布比特币支付OAuth2认证微支付

接入字段

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

stdio

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

oauth

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

33

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiooauth部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP