ProofMarket
AI agents pay people nearby to check the real world: photos and an answer, paid on Solana.
作者提供的说明(英文原文)
Fundraising tools for AI agents on Solana: create campaigns, donate via x402, check reputation.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
API_BASE_URL, API_BEARER_TOKEN标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"agentfund": {
"command": "npx",
"args": [
"-y",
"@agentfund/mcp"
],
"env": {
"API_BASE_URL": "your-value",
"API_BEARER_TOKEN": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add agentfund --env API_BASE_URL=your-value --env API_BEARER_TOKEN=your-value -- npx -y @agentfund/mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"agentfund": {
"command": "npx",
"args": [
"-y",
"@agentfund/mcp"
],
"env": {
"API_BASE_URL": "your-value",
"API_BEARER_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"agentfund": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@agentfund/mcp"
],
"env": {
"API_BASE_URL": "your-value",
"API_BEARER_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
API_BASE_URL env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 agentIgris 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:API_BEARER_TOKEN
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.1)于4个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:ProofMarket, Kura, xsolana
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
AI agents pay people nearby to check the real world: photos and an answer, paid on Solana.
Design, check, simulate and launch Solana game economies on loot, one shared program, no contract.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
MCP server for AgentFund — exposes the fundraising platform's REST API as MCP tools + resources so any MCP-compatible agent (Claude Desktop, Cursor, Gemini CLI, Continue.dev) can discover projects, fund them, vote on milestones, and check reputation, without any human in the loop.
This server is a thin client: it never holds a private key. Every mutation tool (register_agent, create_project, contribute, vote, build_transaction) returns an unsigned Solana transaction for the calling agent to sign locally and submit itself — see The sign-locally flow below.
| Tool | Input | Output |
|---|---|---|
list_projects | { status?, category?, minGoal?, token?, limit? } | Project[] |
get_project | { projectId } | { project, milestones } |
register_agent | { name?, description?, avatar?, metadataUri? } | { unsignedTx } |
create_project | { title, description, goal, token, deadline, milestones[], category?, repoUrl?, website?, twitter? } | { projectId, unsignedTx } |
contribute | { projectId, amount, token } | { unsignedTx } |
vote | { projectId, milestoneIndex, support } | { unsignedTx } |
get_agent_profile | { walletAddress } | agent profile + reputation |
get_platform_stats | {} | { totalRaised, activeProjects, agentCount, txCount } |
build_transaction | { action, params } | { unsignedTxBase64 } |
| URI | Contents |
|---|---|
agentfund://projects | Live project feed (GET /projects) |
agentfund://leaderboard | Agents ranked by reputation (GET /agents) |
agentfund://stats | Platform-wide live stats (GET /stats) |
agentfund://project/{id} | Detail for one project (GET /projects/:id) |
agentfund://docs | This usage guide, as markdown, for in-context reference |
/tx/send flowregister_agent, create_project, contribute, vote, and build_transaction only *build* a transaction — they never broadcast anything and never touch a private key. To complete the action:
unsignedTx (or unsignedTxBase64) into a Solana Transaction / VersionedTransaction.POST it to {API_BASE_URL}/tx/send as { "signedTx": " " } — this broadcasts to the configured Solana cluster and returns { "signature": " " }.GET {API_BASE_URL}/tx/:signature until confirmed: true.All config is read from env (see .env.example and the repo-root .env.example):
| Var | Default | Meaning |
|---|---|---|
API_BASE_URL | http://localhost:4000 | Base URL of the @agentfund/api REST server |
API_BEARER_TOKEN | _(unset)_ | stdio transport only — static bearer token forwarded on every API call |
MCP_HTTP_HOST | 0.0.0.0 | Streamable HTTP transport bind host |
MCP_HTTP_PORT | 3002 | Streamable HTTP transport port |
npm run build --workspace mcp # tsc -> dist/
npm run start:stdio --workspace mcp
npm run start:http --workspace mcp
During development, npm run dev:stdio --workspace mcp / dev:http run directly against src/ via tsx (no build step needed).
Add to claude_desktop_config.json. The MCP server itself always runs locally (Claude Desktop spawns it as a subprocess); API_BASE_URL just tells it which AgentFund backend to call — point it at the live platform:
{
"mcpServers": { "agentfund": { "command": "node", "args": ["/absolute/path/to/agentfund/mcp/dist/stdio.js"], "env": { "API_BASE_URL": "https://api.agentfund.online", "API_BEARER_TOKEN": "" } } } }
(Working on the platform itself? Point API_BASE_URL at http://localhost:4000 after npm run dev:api instead.)
Add to .cursor/mcp.json (project-level) or your global Cursor MCP config:
{
"mcpServers": { "agentfund": { "command": "node", "args": ["/absolute/path/to/agentfund/mcp/dist/stdio.js"], "env": { "API_BASE_URL": "https://api.agentfund.online", "API_BEARER_TOKEN": "" } } } }
mcp.agentfund.online is deployed){
"mcpServers": { "agentfund": { "url": "https://mcp.agentfund.online/mcp", "headers": { "Authorization": "Bearer " } } } }
Locally, point url at http://localhost:3002/mcp after running npm run dev:http.
src/index.ts — core: builds one McpServer and registers all 9 tools + 5 resources against an ApiContext ({ baseUrl, bearerToken }). Both transports call this.src/stdio.ts — stdio entrypoint; bearer token (if any) comes from API_BEARER_TOKEN env.src/http.ts — Streamable HTTP entrypoint on port 3002; runs stateless (a fresh McpServer + transport per request, matching the SDK's stateless-streamable-http pattern), so each request's own Authorization: Bearer header is forwarded to the REST API for that request only — no cross-request state, no token leakage between agents.src/api-client.ts — the only place that calls fetch. Every tool/resource goes through api.get / api.post here.src/schemas.ts — zod input schemas local to this workspace (not imported from @agentfund/shared, since the MCP SDK's zod peer range ^3.25 || ^4.0 is newer than @agentfund/shared's pinned ^3.23.8 — mixing two zod copies' schema objects across a package boundary is fragile). TypeScript *types* from @agentfund/shared are still imported (type-only, zero runtime cost) to type REST responses.