ForgeMesh CoinOpAI
Inteligência de mercado auditável com faixas de previsão calibradas e revisão de anomalias.
Documentação
coinopai-mcp
Contexto de mercado auditável com faixas de previsão calibradas e verificação de resultados.
Fonte: https://github.com/forgemeshlabs/coinopai-mcp
Um servidor MCP que permite que agentes de IA comprem contexto de mercado Kronos com micropagamentos x402 na Base. Kronos não é um oráculo de compra/venda: ele fornece aos agentes faixas calibradas, contexto de risco, diários de decisão e registros de auditoria que podem ser verificados.
Este repositório é a camada de cliente MCP; a inteligência paga é servida a partir de endpoints x402 hospedados da CoinOpAI.
Chamadas fracas e chamadas erradas também são exibidas. Esse é o objetivo.
Por que o Kronos é Diferente
A maioria das APIs de mercado para após retornar uma direção. O Kronos lidera com faixas calibradas e contexto de risco, e então atribui um decision_id para que cada decisão possa ser auditada contra o comportamento futuro do mercado.
O diferencial é o ciclo de auditoria:
preflight -> decision -> audit
Confie menos no processo. Verifique mais o registro.
Arquitetura
┌──────────────────────────────────┐
│ Claude Code / AI Agent │
└──────────────┬───────────────────┘
│ MCP (stdio)
▼
┌──────────────────────────────────┐
│ coinopai-mcp │
│ npx coinopai-mcp │
└──────────────┬───────────────────┘
│ HTTP + 402 payment header
▼
┌──────────────────────────────────┐
│ x402.coinopai.com │
│ Kronos intelligence API │
└──────────────┬───────────────────┘
│
▼
┌──────────────────────────────────┐
│ Coinbase x402 Facilitator │
│ USDC settled on Base mainnet │
└──────────────────────────────────┘
O agente chama uma ferramenta → o servidor MCP recebe um HTTP 402 → assina automaticamente um micropagamento USDC → tenta novamente com o cabeçalho de pagamento → os dados são retornados. Configure uma vez, pague automaticamente a partir da carteira configurada de saldo baixo.
Pacote atual: coinopai-mcp@1.2.10.
Nota de liquidação: o MCP fixa @x402/core e @x402/evm em 2.11.0 e assina autorizações EIP-3009 com um timestamp ciente da cadeia. Isso evita o modo de falha de distorção de relógio RPC/facilitador da Base, onde um pagamento pode ser rejeitado como "autorização ainda não é válida" ou "válida antes de expirada". Respostas de objeto bem-sucedidas incluem metadados de liquidação x402 sob _payment, incluindo o hash da transação on-chain quando disponível.
O Ciclo Auditável ($0,27/ciclo)
check_trade_preflight ──→ get_crypto_decision ──→ [wait 1h] ──→ audit_trade_decision
$0.05 $0.15 $0.07
Market state? Directional context Outcome record
Cooldown context? Confidence context Direction held?
Regime context? + decision_id Verdict
Data freshness? + audit hint + pnl_pct
Cada decisão é auto-verificável. O decision_id vincula a configuração ao resultado. A auditoria busca preços reais de mercado e produz um veredito. Nada é ocultado.
Status Atual
Em produção
- Contexto de modelo
- Avaliação de risco
- Registro de decisões
- Verificação de resultados
- Previsão: faixa de preço de 80% calibrada conformalmente (~0,80 de cobertura empírica)
Em pesquisa
- Vantagem direcional: nenhuma demonstrada em backtest (~51% de precisão) — a faixa calibrada é o produto validado, não a direção
- Análise de concordância entre previsão e execução: coletando evidências
A faixa de previsão calibrada está em produção e validada (conformal, ~0,80 de cobertura). Valores direcionais são contexto de apoio, não instruções de negociação isoladas. Use-os com a faixa calibrada, o estado de risco e o registro de auditoria.
Contexto Direcional
| Valor | Significado |
|---|---|
| Positivo | Contexto de modelo de alta |
| Negativo | Contexto de modelo de baixa |
| 0,00-0,01 | Magnitude fraca |
| 0,01-0,03 | Magnitude moderada |
| 0,03+ | Magnitude forte |
Valores direcionais são contexto de apoio, não garantias, recomendações humanas ou instruções de negociação isoladas. Use-os com a faixa calibrada, o estado de risco e o registro de auditoria.
Saída Real
Etapa 1 — Pré-verificação (BTC, $0,05)
{
"allowed": true,
"symbol": "BTC/USD",
"market_state": "NORMAL",
"signal_strength": "weak_or_mixed",
"regime": "TREND",
"cooldown_remaining_seconds": 0
}
Etapa 2 — Decisão (BTC, $0,15)
{
"symbol": "BTC/USD",
"directional_bias": "upward",
"confidence": 0.514,
"compliance_mode": "market_intelligence_only",
"regime": "TREND",
"decision_id": "a3f8c1d2-9472-4dfe-b459-5df17b282614",
"directional_edge": "none_demonstrated",
"why_not_high": [
"Directional confidence is capped by observed historical accuracy, not boosted by signal magnitude."
],
"next_step": "Call audit_trade_decision with this decision_id after 1h using window=1h"
}
Etapa 3 — Auditoria (1h depois, $0,07)
{
"decision_id": "a3f8c1d2-9472-4dfe-b459-5df17b282614",
"direction_held": true,
"pnl_pct": 0.82,
"verdict": "GOOD_DECISION"
}
Os vereditos de auditoria incluem GOOD_DECISION, BAD_DIRECTION, NOISE, NO_ACTION_TAKEN e PENDING. O Kronos acerta alguns, erra alguns e expõe ambos por meio do mesmo registro.
Auditorias recentes podem retornar pending_window até que a janela de avaliação amadureça.
Ferramentas
| Ferramenta | O que faz | Custo | Afiliado |
|---|---|---|---|
check_trade_preflight | Verificação de portão: mercado permitido, cooldown, regime, contexto de modelo | $0,05 | ✓ |
get_crypto_decision | Diário de decisão probabilístico + decision_id | $0,15 | ✓ |
audit_trade_decision | Verificar contra preços reais: veredito + PnL% | $0,07 | ✓ |
get_crypto_signals | Contexto de modelo para BTC, ETH, SOL, XRP, ADA | $0,05 | ✓ |
get_crypto_signal_history | Até 168h de histórico de contexto para análise | $0,05 | ✓ |
get_crypto_forecast | Faixa de preço de 80% calibrada conformalmente (~0,80 de cobertura empírica) para BTC, ETH, SOL, XRP, ADA | $0,05 | ✓ |
review_signal_anomaly | Pontuar características de sinal para condições incomuns; retorna rótulos de revisão, direcionadores e pontuações de componentes | $0,07 | — |
get_crypto_risk | Estado de risco de mercado e contexto de cooldown | $0,02 | — |
search_agent_automations | Buscar 819 prompts de automação de agentes | $0,01 | — |
get_agent_automation | Prompt completo + etapas de fluxo de trabalho por slug | $0,01 | — |
list_automation_categories | Todas as 35 categorias de automação com contagens | $0,005 | — |
Sem chaves de API. Sem assinaturas. Pague por chamada em USDC.
Instalação
Claude Code
Adicione ao ~/.claude/settings.json:
{
"mcpServers": {
"coinopai": {
"command": "npx",
"args": ["-y", "coinopai-mcp"],
"env": {
"WALLET_PRIVATE_KEY": "0x<your-base-wallet-private-key>"
}
}
}
}
Reinicie o Claude Code. As ferramentas aparecem automaticamente.
Claude Desktop
Adicione à sua configuração do Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"coinopai": {
"command": "npx",
"args": ["-y", "coinopai-mcp"],
"env": {
"WALLET_PRIVATE_KEY": "0x<your-base-wallet-private-key>"
}
}
}
}
Smithery
Atualmente não listado no Smithery. Use o fluxo de instalação npx mostrado acima até que uma listagem pública verificada esteja disponível.
Nota de teste para desenvolvedores
Ao testar o pacote publicado com um harness stdio MCP, não inicie o npx coinopai-mcp@... de dentro do checkout do código-fonte coinopai-mcp. O npm pode preferir o contexto do pacote local e falhar antes que o binário temporário esteja disponível. Teste a partir de outro diretório, ou instale em um projeto temporário e inicie o ./node_modules/.bin/coinopai-mcp.
Status do registro
Identidade preparada do MCP Registry: io.github.forgemeshlabs/coinopai-mcp. Atualize o envio do diretório público após publicar este pacote para que entradas antigas de clawdbotworker deixem de ser canônicas.
Obtenha uma Carteira
- Instale a Coinbase Wallet ou qualquer carteira EVM
- Mude para a rede Base
- Compre ou faça bridge de USDC ($1 = ~3 ciclos completos verificados)
- Use uma carteira Base dedicada de saldo baixo para pagamentos de agentes e forneça sua chave privada localmente via variável de ambiente.
Sua chave de carteira permanece local. Ela nunca sai da sua máquina. Cada pagamento é um micropagamento assinado — não uma aprovação genérica.
Exemplo de Código de Agente
// Step 1 — gate check ($0.05)
const pre = await mcp.call("check_trade_preflight", { symbol: "BTC" })
if (!pre.allowed) return // cooldown, bad regime, or stale data
// Step 2 — get decision journal ($0.15)
const dec = await mcp.call("get_crypto_decision", { symbol: "BTC" })
// Store the decision_id — you'll need it to close the loop
const { decision_id, directional_bias, confidence } = dec
// Optional — review a feature set for anomaly context ($0.07)
const anomaly = await mcp.call("review_signal_anomaly", {
symbol: "BTC",
window: "24h",
features: {
price_change: 0.018,
volume_change: 0.42,
volatility: 0.031,
signal_confidence: 72,
risk_score: 31
}
})
// review_label: "normal_review" | "review" | "elevated_review" | "critical_review"
// Step 3 — audit 1 hour later ($0.07)
const audit = await mcp.call("audit_trade_decision", {
decision_id,
window: "1h"
})
// verdict: "GOOD_DECISION" | "BAD_DIRECTION" | "NOISE"
console.log(audit.verdict, audit.pnl_pct + "%")
Cada resposta de decisão inclui um campo next_step — seu agente sempre sabe quando e como auditar.
Símbolo indisponível? Se um símbolo não estiver no ciclo atual do Kronos:
{
"status": "UNAVAILABLE_THIS_CYCLE",
"available_symbols": ["BTC/USD", "ETH/USD", "XRP/USD"],
"retry_hint_seconds": 900
}
Roteie para um símbolo disponível ou aguarde 15 minutos para o próximo ciclo.
Pilha de Pagamento
| Componente | Valor |
|---|---|
| Protocolo | x402 |
| Esquema | ExactEvmScheme (EIP-3009 transferWithAuthorization) |
| Rede | Base mainnet (eip155:8453) |
| Token | USDC (0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913) |
| Facilitador | Coinbase |
| SDK do cliente fixa | @x402/core@2.11.0, @x402/evm@2.11.0 |
| Metadados de recibo | Respostas de objeto bem-sucedidas incluem _payment |
Atribuição de Afiliado (via Pyrimid)
Ferramentas de alto valor aceitam um parâmetro opcional affiliate_id. Quando fornecido, o pagamento é roteado pela rede de afiliados Pyrimid — o afiliado ganha uma comissão dividida a partir do preço listado. Sem custo extra para o chamador.
Como funciona a divisão
Direct call (no affiliate_id):
Caller pays $0.15 → CoinOpAI receives $0.15
Affiliate call (affiliate_id present):
Caller pays $0.15 → CoinOpAI: 79.2% ($0.1188)
→ Affiliate: 19.8% ($0.0297)
→ Protocol: 1.0% ($0.0015)
O comprador sempre paga o preço listado. A divisão sai da parte do fornecedor.
Uso
Passe affiliate_id em qualquer chamada de ferramenta compatível:
// As an agent or user
await mcp.call("get_crypto_decision", {
symbol: "BTC",
affiliate_id: "af_youraffiliateID"
})
Construindo um wrapper? Defina uma vez via env
Se você está construindo um framework de agente, wrapper MCP ou automação que incorpora ferramentas CoinOpAI, defina seu ID de afiliado como uma variável de ambiente. Cada chamada através do seu wrapper gera uma comissão automaticamente.
{
"mcpServers": {
"coinopai": {
"command": "npx",
"args": ["-y", "coinopai-mcp"],
"env": {
"WALLET_PRIVATE_KEY": "0x<agent-wallet-key>",
"PYRIMID_AFFILIATE_ID": "af_<your-affiliate-id>"
}
}
}
}
O argumento affiliate_id no nível da ferramenta tem precedência sobre a variável de ambiente. Chamadores sempre podem sobrescrever.
Sem um affiliate_id
Fluxo x402 normal — a CoinOpAI recebe 100% do preço listado. Nada muda para o chamador.
Aviso Legal
As saídas de decisão são contexto probabilístico e entradas de diário apenas para fluxos de trabalho automatizados experimentais. Não é aconselhamento financeiro. O viés direcional sozinho não foi validado como uma estratégia de negociação independente. Os resultados variarão. Nunca arrisque capital que você não pode perder.
Parte do Ecossistema ForgeMesh
Infraestrutura para ecossistemas de agentes monetizados.
| Pacote | O quê | Instalação |
|---|---|---|
| affiliate-router-mcp | Roteamento de monetização neutro de fornecedor | npm i affiliate-router-mcp |
| coinopai-mcp | Inteligência cripto paga (este pacote) | npm i coinopai-mcp |
| forgemesh-imagegen | Geração de imagens paga MCP | npm i forgemesh-imagegen |
Cada pacote funciona de forma independente. Nenhuma dependência compartilhada é necessária.
Licença
MIT — veja LICENSE