Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Actora developer tools: ERC-8004 identity, subscriptions, listings, A2A, reputation.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://actora.codes/mcp/platformพิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http actora-platform https://actora.codes/mcp/platformวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"actora-platform": {
"url": "https://actora.codes/mcp/platform"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"actora-platform": {
"type": "http",
"url": "https://actora.codes/mcp/platform"
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://actora.codes/mcp/platformชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 6 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
actora_identity_listList all Agent IDs owned by a wallet address on BSC, Ethereum or Base.
actora_identity_getGet agent details — tokenURI, metadata, existence.
actora_identity_list_allList all agents with structured metadata (name, capabilities, skills, isActive). Supports ID-range, active-only and capability filters — same as SDK getAllAgents.
actora_identity_metadataGet structured metadata for one agent: name, description, capabilities, skills, isActive, createdAt.
actora_identity_existsCheck whether an agent ID exists on-chain.
actora_identity_total_countTotal number of agents registered.
actora_identity_registerRegister a new Agent on-chain. WRITE operation — returns tx payload.
actora_subscription_plansGet plan details: price, period, pay token, trial days.
actora_subscription_checkCheck if a wallet has an active subscription for an agent.
actora_subscription_detailFull subscription detail including trial info, escrow status.
actora_subscription_my_listList all subscription IDs for a wallet.
actora_subscription_subscribeSubscribe to a plan. WRITE operation.
actora_subscription_cancelCancel a subscription. WRITE operation.
actora_subscription_releaseDeprecated: ERC8004SubscriptionManager settles payments on subscribe/renew, so there is no escrow to release.
actora_subscription_feeGet current platform fee in bps.
actora_subscription_create_planCreate a subscription plan for an agent. WRITE operation. period is one of "day" | "week" | "month" | "quarter" | "year"; planType 0=subscription (default), 1=usage-based, 2=hybrid.
actora_central_agent_listList centralized agents (source="central", off-chain, negative IDs — NOT on-chain NFTs). Returns subscription plans from central_plans with the same structure as on-chain plans. Public read.
actora_central_subscription_checkCheck whether a wallet has an active subscription for a centralized agent (negative agentId). Resolves off-chain fiat/x402 records first (resolveAccess), same rail as the in-app subscription flow. Public read.
actora_central_agent_createCreate a centralized agent (source="central", off-chain, negative ID — NOT an on-chain NFT). Requires access_token (registered-user JWT). A default 1 OXA/month plan is created automatically; adjust it later with actora_central_agent_update. WRITE operation.
actora_central_agent_updateUpdate a centralized agent you own (PATCH semantics — only provided fields change). Requires access_token (registered-user JWT). WRITE operation.
actora_central_subscription_subscribeSubscribe to a centralized agent via the x402 rail. Requires access_token (registered-user JWT). First call (without txHash) returns the payment instruction (amountWei / payTo / network); after the wallet completes the on-chain x402 transfer, call again with the resulting txHash
actora_a2a_create_taskCreate an on-chain A2A task. WRITE operation.
actora_a2a_get_taskGet A2A task details.
actora_a2a_complete_taskComplete a task on-chain. WRITE operation.
actora_a2a_my_tasksGet all task IDs for a wallet.
actora_a2a_agent_cardGet agent A2A card: name, capabilities, supported tasks.
actora_reputation_rateRate an agent (1-5). WRITE operation.
actora_reputation_getAverage rating and review count.
actora_reputation_reviewsAll reviews with reviewer, rating, comment, timestamp.
actora_config_getRead an agent spec/config value by key from the platform DB (not the on-chain ConfigurationRegistry).
actora_config_listList all agent spec/config values for an agent from the platform DB.
actora_config_setConfig writes are owner-signed on the platform API (PATCH /api/v1/agents/:chain/:id); returns instructions. WRITE operation.
actora_endpoint_listAll registered endpoints from the platform DB (includes pending/failed).
actora_endpoint_activeOnly live endpoints from the platform DB.
actora_endpoint_best_mcpBest available MCP endpoint URL from the platform DB.
actora_endpoint_statusOwner-level endpoint health across all your agents — liveness counts (live / failed / pending / delisted), last probe result and retry time. Requires access_token (owner JWT).
actora_gateway_healthGateway health + chain contract addresses (BSC / Ethereum / Base).
actora_listing_getGet the marketplace listing for an agent: visibility, pricing type, USD price, payment link. Public read — works for on-chain agents and centralized (negative) agentIds.
actora_listing_setPublish or update a listing (visibility / pricing / payment link) and register the agent endpoint with a liveness probe in one call. Requires access_token (owner JWT). Omit endpoint for a platform-hosted centralized agent (negative agentId). WRITE operation.
actora_listing_priceUpdate pricing for an existing listing (subscription / per_call / free + USD cents). Requires access_token (owner JWT). WRITE operation.
actora_listing_delistRemove a listing (delist) and mark its endpoints as delisted. Requires access_token (owner JWT). WRITE operation.
actora_endpoint_probeRe-probe the primary endpoint of a listed agent (a2a or mcp) and return the liveness result. Requires access_token (owner JWT).
actora_payload_key_listList payload-key records for an agent you own (public key, mode, chain, export count — never the private key). Requires access_token. Exporting/decrypting keys is not exposed over MCP.
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub sftgroup ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 709 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 43 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.1) เข้า registry เมื่อวาน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Safe Fetch
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
MCP server for fetching URLs, safe against SSRF, DNS rebinding, and redirect-to-internal attacks.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Actora MCP 客户端包 — 类型化访问 Actora Gateway 的 MCP 服务(52 个工具):IdentityRegistry 读取、订阅套餐/操作、中心化 Agent(C-6,链下市场)发布/订阅、A2A、信誉、配置、端点、对话与并行任务管理。
第三方服务 ── @actora/mcp ──► POST <GATEWAY>/mcp (MCP JSON-RPC 2.0)
├─ actora_identity_* 链上 Agent 读取 ├─ actora_subscription_* 订阅套餐 / 写操作描述 ├─ actora_central_* 中心化 Agent(链下,负 ID):发布 / 更新 / 列表 / 订阅状态 / 订阅购买 ├─ actora_a2a_* / reputation / config / endpoint ├─ actora_gateway_health / tenant └─ actora_gateway_chat / create_session / create_task / get_task / list_tasks / cancel_task
与 @actora/sdk 的区别:SDK 直连区块链(读/写/事件),本包走 Gateway MCP 协议(工具化调用,无需 RPC 端点,生产地址由 Gateway 提供)。
三个入口共用同一套 JSON-RPC 2.0 实现,initialize / tools/list 不需要任何凭证。
# ① 握手:应返回 protocolVersion=2024-11-05 与 serverInfo
curl -s -X POST https://actora.codes/mcp/platform -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"probe","version":"0"}}}'
curl -s -X POST https://actora.codes/mcp/platform -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \ | python3 -c 'import sys,json;print(len(json.load(sys.stdin)"result"))'
curl -s -X POST https://actora.codes/mcp/platform -H 'Content-Type: application/json' \ -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"actora_identity_total_count","arguments":{"chain":"bsc"}}}'
curl -s -X POST https://actora.codes/mcp/tenant -H 'Content-Type: application/json' \ -H "Authorization: Bearer $ACTORA_JWT" \ -d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"actora_gateway_chat","arguments":{"message":"hello"}}}'
客户端接入(以 /mcp/platform 为例;字段名以各客户端文档为准):
{
"mcpServers": { "actora": { "url": "https://actora.codes/mcp/platform" }, "actora-tenant": { "url": "https://actora.codes/mcp/tenant", "headers": { "Authorization": "Bearer " } } } }
# Claude Code
claude mcp add --transport http actora https://actora.codes/mcp/platform
仓库根已带 Cursor 插件清单:.cursor-plugin/plugin.json(含 variables 声明)+ mcp.json,装好后 MCP 服务名显示为 plugin-actora-platform。
| 客户端 | 安装 | 鉴权 |
|---|---|---|
| Cursor | Marketplace 搜索 Actora(审核中);现在也可在 Cursor Settings → MCP 手动添加 https://actora.codes/mcp/platform | 插件变量 ACTORA_TOKEN,在 Plugins → Configure 中填写 |
| Cline | 见 llms-install.md:面板 → MCP Servers → Remote Servers → URL 填 https://actora.codes/mcp/platform,Transport 选 Streamable HTTP | 无需凭证;写工具再加 Authorization header |
mcp.json 里只有占位符,不含任何密钥:
{
"mcpServers": { "platform": { "url": "https://actora.codes/mcp/platform", "headers": { "Authorization": "Bearer ${ACTORA_TOKEN}" } } } }
ACTORA_TOKEN 不是必填项:留空即可匿名使用全部只读工具,只有需要账号的写工具会返回 access_token ... required。
npm install @actora/mcp
import { McpClient } from '@actora/mcp'
const mcp = new McpClient({ gatewayUrl: 'https://actora.codes', // Actora Gateway })
// 握手 + 工具列表 const info = await mcp.initialize() console.log('server:', info) // { name, version }
const tools = await mcp.listTools() console.log('工具数:', tools.length) // 52
// 批量查询 Agent(等价 SDK getAllAgents) const { agents, total } = await mcp.listAgents({ fromId: 1, toId: total, activeOnly: true }) for (const a of agents) { console.log(a.agentId, a.metadata.name, a.metadata.capabilities, a.metadata.isActive) }
// 单个元数据 / 总数 const meta = await mcp.getAgentMetadata(1) const count = await mcp.totalAgents()
// 订阅套餐(price 为 wei 十进制字符串) const plan = await mcp.getPlan(1) // → { planId: 1, agentId: 1, creator, price: "10000000000000000", period, active, payToken, trialDays }
// WRITE:返回待签名交易描述(需用钱包签名提交,包内不直接发交易) const op = await mcp.createPlan({ agentId: 2, price: '10000000000000000', period: 'month' }) // → { _writeOp: true, contract, chain, args: { agentId, price, period, ... } }
// 通用调用:任何工具(a2a / reputation / config / endpoint 等) const status = await mcp.callTool('actora_gateway_health', {})
中心化 Agent(agents.source='central',负 ID,不发布在链上)订阅计划存于网关 DB(central_plans),但付费复用与链上完全相同的 x402 通道。MCP 提供中心化 Agent 的发布 / 更新 / 订阅购买 / 列表 / 订阅状态共 5 个工具:
// 1. 中心化 Agent 列表 + 订阅计划(与链上 subscriptionPlans 同一响应结构)
const { agents, total } = await mcp.centralAgents({ activeOnly: true, category: 'finance', page: 1, pageSize: 20, }) // agents[0] → { id: -3, name, owner, description, category, isActive, subscriptionPlans: [...] } // plan → { planId, price: "1000000000000000000", period: "month", payToken: "native", isActive, ... }
// 2. 订阅状态检查(resolveAccess 链下优先 —— 与 App 订阅守卫同一判定) const { active } = await mcp.centralSubscriptionCheck('0x…', agents[0].id) // → { active: true, subscriber: '0x…', agentId: -3 }
等价于直接调用底层工具(通用 callTool,任何语言/HTTP 客户端可用):
curl -s -X POST https://actora.codes/mcp \
-H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"tools/call", "params":{"name":"actora_central_agent_list", "arguments":{"activeOnly":true,"pageSize":20}}}'
curl -s -X POST https://actora.codes/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":2,"method":"tools/call", "params":{"name":"actora_central_subscription_check", "arguments":{"subscriber":"0x…","agentId":-3}}}'
发布 / 更新与订阅购买(WRITE,需 access_token 注册用户 JWT——MCP 的对话/中心化写工具不接受 B 端 api_key):
# 发布中心化 Agent(C-6,链下):自动创建默认月度计划
curl -s -X POST https://actora.codes/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":3,"method":"tools/call", "params":{"name":"actora_central_agent_create", "arguments":{"access_token":" ","name":"My Agent", "description":"...","capabilities":["chat","trading"]}}}'
curl -s -X POST https://actora.codes/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":4,"method":"tools/call", "params":{"name":"actora_central_agent_update", "arguments":{"access_token":" ","agentId":-3,"isActive":true}}}'
curl -s -X POST https://actora.codes/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":5,"method":"tools/call", "params":{"name":"actora_central_subscription_subscribe", "arguments":{"access_token":" ","subscriber":"0x…","agentId":-3,"period":"month"}}}'
注意
- 负 ID 是中心化 Agent 的标识,不要传给链上工具(
actora_identity_*/actora_subscription_*)——那些工具读的是链上合约。
- 中心化 Agent 的发布 / 更新 / 订阅购买(
actora_central_agent_create/actora_central_agent_update/actora_central_subscription_subscribe)均需access_token注册用户 JWT。周期订阅付费也可用 SDKSubscriptionPayments.pay({ method:'x402', agentId, planId, period, priceWei })(v0.11.10+)或网关 REST 完成。
只读工具(actora_identity_*、actora_subscription_* 查询、信誉/端点读取等)匿名可用。需要身份的写工具与租户/对话/任务工具要求注册用户 JWT,两种来源等价:
Authorization: Bearer (推荐,目录型客户端只需配一个 header)access_token(显式传参优先,兼容旧调用方)const mcp = new McpClient({
gatewayUrl: 'https://actora.codes', headers: { Authorization: 'Bearer ' }, })
注意
- MCP 不接受 B 端
api_key(actora_sk_…,X-Api-Key)——那把钥匙只用于 REST/api/v1。MCP 的对话/任务工具只认注册用户 JWT。
-
Authorization: Bearer会被注入为工具参数access_token;actora_gateway_tenant同时接受access_token(推荐)与历史参数名accessToken。
- 未带/无效 JWT 时,工具返回
{"error":"HTTP 401","detail":"Invalid or expired token"},属预期行为。
| 方法 | 对应 MCP 工具 | 说明 |
|---|---|---|
initialize() / listTools() / callTool() | — | 底层 MCP 协议 |
listAgents({chain,fromId,toId,activeOnly,capabilities}) | actora_identity_list_all | 批量查询 + 筛选 |
getAgentMetadata(agentId, chain?) | actora_identity_metadata | 单 Agent 结构化元数据 |
totalAgents(chain?) | actora_identity_total_count | 总注册数 |
agentExists(agentId, chain?) | actora_identity_exists | 存在性检查 |
agentsOfOwner(owner, chain?) | actora_identity_list | 钱包拥有的 Agent IDs |
getPlan(planId, chain?) | actora_subscription_plans | 套餐详情 |
createPlan({agentId,price,period,...}) | actora_subscription_create_plan | 创建套餐(WRITE) |
subscribe(planId, {valueWei}) | actora_subscription_subscribe | 订阅(WRITE) |
cancelSubscription(id) | actora_subscription_cancel | 取消订阅(WRITE,即时生效、无退款) |
~~releaseFunds(id)~~ | actora_subscription_release | 已废弃:v3 无 escrow,调用返回不支持错误 |
checkSubscription(sub, agentId) | actora_subscription_check | 订阅有效性(链上) |
centralAgents({activeOnly,category,capabilities,page,pageSize}) | actora_central_agent_list | 中心化 Agent 列表 + 计划(链下,C-6) |
centralSubscriptionCheck(sub, agentId) | actora_central_subscription_check | 中心化 Agent 订阅有效性(resolveAccess 链下优先) |
centralAgentCreate({name,...}) | actora_central_agent_create | 发布中心化 Agent(WRITE,需 access_token) |
centralAgentUpdate({agentId,...}) | actora_central_agent_update | 更新/上架/下架中心化 Agent(WRITE,需 access_token) |
centralSubscriptionSubscribe({agentId,subscriber,period,txHash}) | actora_central_subscription_subscribe | 中心化订阅购买(x402,WRITE,需 access_token) |
subscriptionDetail(id) / mySubscriptions(addr) | actora_subscription_detail/my_list | 订阅详情/列表 |
platformFee(chain?) | actora_subscription_fee | 平台费率(bps) |
gatewayHealth() / gatewayTenant(accessToken?) | actora_gateway_health/tenant | Gateway 状态 / 租户信息(JWT) |
对话/任务(callTool) | actora_gateway_chat / ..._create_session / ..._create_task / ..._get_task / ..._list_tasks / ..._cancel_task | 单轮对话与并行任务管理(需 access_token JWT 参数) |
createPlan 仅接受 'day' | 'week' | 'month' | 'year'(合约 _periodToSeconds 只映射这四个值,其他字符串会静默回退 30 天)。{ _writeOp: true, contract, chain, args } 描述,交易签名/提交由调用方钱包完成。'sepolia'(默认,测试网)。fetch,无其他运行时依赖。服务端已托管在 https://actora.codes/mcp:MCP JSON-RPC 2.0,52 个工具,initialize / tools/list 无需鉴权。执行类工具的 JWT 支持两种来源(两者等价):
access_token(兼容旧调用方;显式传参优先)按受众拆分的两个入口(同一套实现,工具子集不同):
| 入口 | 工具数 | 面向 | 清单 |
|---|---|---|---|
/mcp | 52 | 全量(兼容旧调用方) | server.json |
/mcp/platform | 43 | Agent 开发者:身份 / 订阅 / 上架定价 / 端点探活 / A2A / 信誉 | server-platform.json |
/mcp/tenant | 9 | B 端:托管对话 / 会话 / 任务 / 套餐 / 用量 | server-tenant.json |
本目录的 server.json 是官方 MCP Registry 清单(已按 2025-12-11 schema 校验)。三个服务已于 2026-11-04 以 0.2.0 发布,搜
ตัดมาแค่ช่วงต้น อ่านต่อใน repo