Skip to main content

karma-mcp-server

Karma 通用 Agent MCP Server —— 薄接入层。把已有后端能力接到 MCP,不重写任何业务。

安全红线

  • 本进程只注入 KARMA_RUNTIME_KEY;禁止私钥、助记词。启动时会检查并拒绝启动。
  • 远程 HTTP 传输默认关闭(需 KARMA_MCP_ENABLE_HTTP=1 + KARMA_MCP_HTTP_TOKEN;缺一拒绝启动)。
  • Tier-2/3(动钱)默认不注册(KARMA_MCP_ENABLE_TIER2/3=1 才开)。

环境变量

变量 必填 说明
KARMA_RUNTIME_KEY 是(配对后) KRM_RT_…;只读
KARMA_RUNTIME_URL 否 默认 http://localhost:8000
KARMA_AGENT_PRIVATE_KEY 否 Agent 签名私钥(base64/hex),留在本机
KARMA_AGENT_ID 否 主人授权的 agent id
KARMA_AGENT_ENV_PATH 否 凭据文件路径覆盖(默认 ~/.karma/agent.env)
KARMA_MCP_ENABLE_TIER2 否 开启交易/交付工具(默认关)
KARMA_MCP_ENABLE_TIER3 否 开启结算/争议工具(默认关)
KARMA_MCP_ENABLE_HTTP 否 开启 Streamable HTTP(默认关)
KARMA_MCP_HTTP_TOKEN 远程必填 远程 HTTP 的静态 bearer token;缺了拒绝启动
KARMA_MCP_STATE_DIR 否 配对状态目录(含配对码),默认 ~/.karma/pairings
KARMA_MCP_ISSUER_URL / KARMA_MCP_RESOURCE_URL 否 远程鉴权 issuer / resource,默认取 host:port

安装

pip install karma-mcp-server          # 已发布到 PyPI(当前 0.1.1)

# 或者,从仓库里装:
pip install ./packages/karma-mcp-server

装 / 接线 / 自检 / 发包的完整口径: docs/mcp/karma-mcp-integration.md。

运行

pip install -e ".[dev]"
karma-mcp-server                                    # stdio(本地 Agent,默认)

KARMA_MCP_ENABLE_HTTP=1 KARMA_MCP_HTTP_TOKEN=... \
  karma-mcp-server --transport streamable-http --host 0.0.0.0 --port 8765

远程启动有三道红线:进程里出现私钥 / 未设 KARMA_MCP_ENABLE_HTTP=1 / 没配 KARMA_MCP_HTTP_TOKEN —— 任一条不满足都拒绝启动。

测试

python -m pytest -q -c pyproject.toml

当前状态(第二阶段 S2–S5 已落地)

已实现并有测试(packages/karma-mcp-server/tests,56 例全绿):

  • S2 薄层:配置 / 凭据(只读)/ Agent Ed25519 逐请求签名(与服务端逐字对齐)/ 后端客户端(错误分类 + client_nonce)/ 凭据 0600 落盘 / stdio 入口。
  • S3 配对与身份:karma_connect → karma_connect_status → karma_connect_claim (配对码只落本机文件,凭据只回指纹);身份核验、授权状态、策略、交易 / 结算 / 信誉查询。
  • S3 授权读写:karma_request_authorization(预览,不写后端)→ karma_submit_authorization(主人钱包签名后铸造)→ karma_update_authorization (铸新 + 撤旧)→ karma_revoke_authorization(一键停用)。
  • S4 远程入口:--transport streamable-http + 静态 bearer token(常量时间比较)。
  • S5 交易工具:Tier-2/3 已实现,默认不注册,按 Tier 白名单 fail-closed。
Tier 默认 开启方式 内容
T0 只读 开 — 连接 / 身份 / 授权状态 / 策略 / 交易 / 结算 / 信誉 / 凭证查询
T1 授权 开 — 授权预览 / 提交(需主人钱包签名)/ 更新 / 撤销
T2 交易 关 KARMA_MCP_ENABLE_TIER2=1 下单 / 收款码 / 确认裁决 / 证据 / 回执 / 进度 / 结算请求
T3 资金 关 KARMA_MCP_ENABLE_TIER3=1 凭证校验 / 争议 / 退款

未做(S6 及以后):跨平台适配器(Telegram / 微信等)、完整 OAuth 2.1 授权服务器接入。

Metadata

Release files for karma-mcp-server 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for karma-mcp-server 0.1.1
File Size Uploaded
karma_mcp_server-0.1.1.tar.gz 44.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for karma-mcp-server 0.1.1
File Interpreter ABI Platform
karma_mcp_server-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 78.7 kB

Release files / karma_mcp_server-0.1.1.tar.gz

Download URL karma_mcp_server-0.1.1.tar.gz
Size 44.0 kB
Tags Source
SHA-256 checksum
How to use checksums
620da53e284adc15dd1caae7e5e37f1637baccd2bd99d0aca0a088107f23cc18
BLAKE2b-256 checksum
How to use checksums
f079919a78c07db5d4f4aad54603a57fe30cc6d7862e773c1f3461fd92ad184a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release files / karma_mcp_server-0.1.1-py3-none-any.whl

Download URL karma_mcp_server-0.1.1-py3-none-any.whl
Size 34.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d68ce2c22b97a160a25863c13dd74a8231250b049a8352025f955c0f93dbb5d3
BLAKE2b-256 checksum
How to use checksums
700b0945d714c733e764458bf6ba57827d6d49948da1dc823d94cf9ad9e223d1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.15

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page