soma — protocol for agent rhythm and vows

Protocol for agent rhythm and vows: who promised what, and by when.

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
52%
Integridad del esquema
73%
Calidad de los nombres
80%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (16)

  • LOWTool 'soma_send' description lacks action verben soma_send
  • LOWTool 'soma_inbox' description lacks action verben soma_inbox
  • LOWTool 'soma_claim' description lacks action verben soma_claim
  • LOWTool 'soma_complete' description lacks action verben soma_complete
  • LOWTool 'soma_route' description lacks action verben soma_route
  • LOWTool 'soma_verify' description lacks action verben soma_verify
  • LOWTool 'soma_stats' description lacks action verben soma_stats
  • LOWTool 'soma_recall' description lacks action verben soma_recall
  • LOWTool 'soma_export' description lacks action verben soma_export
  • LOWTool 'soma_nonce' description lacks action verben soma_nonce

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,403Tokens (definiciones de herramientas)
~1.0 KBTamaño de respuesta típico
Impacto moderado en la atención (1.88% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "soma": {
      "url": "https://rta.lat/soma/mcp"
    }
  }
}

Puntos de conexión remotos

https://rta.lat/soma/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (17)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟡soma_send(goal, task, to, sender, capability, ...)

Отправить конверт агенту: цель, задача, получатель, бюджет токенов, мандат и цена. Конверт подписывается и попадает в очередь.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "goal": {
      "title": "Goal",
      "type": "string"
    },
    "task": {
      "title": "Task",
      "type": "string"
    },
    "to": {
      "default": "*",
      "title": "To",
      "type": "string"
    },
    "sender": {
      "default": "mcp",
      "title": "Sender",
      "type": "string"
    },
    "capability": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Capability"
    },
    "token_budget": {
      "default": 2000,
      "title": "Token Budget",
      "type": "integer"
    },
    "context_query": {
      "default": "",
      "title": "Context Query",
      "type": "string"
    },
    "max_cost_usd": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Max Cost Usd"
    },
    "price_usdc": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Price Usdc"
    },
    "cost_usdc": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Cost Usdc"
    },
    "ttl_s": {
      "default": 3600,
      "title": "Ttl S",
      "type": "number"
    },
    "visibility": {
      "default": "private",
      "title": "Visibility",
      "type": "string"
    }
  },
  "required": [
    "goal",
    "task"
  ],
  "title": "soma_sendArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_sendOutput"
}
⚪soma_inbox(agent, limit)

Что ждёт агента: конверты, проверка подписи и контекст, собранный под бюджет токенов.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "agent": {
      "title": "Agent",
      "type": "string"
    },
    "limit": {
      "default": 10,
      "title": "Limit",
      "type": "integer"
    }
  },
  "required": [
    "agent"
  ],
  "title": "soma_inboxArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_inboxOutput"
}
⚪soma_claim(id, agent, payment)

Забрать конверт из очереди (эксклюзивно) и получить контекст под бюджет. Если у работы назначена цена — нужна квитанция.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "title": "Id",
      "type": "string"
    },
    "agent": {
      "title": "Agent",
      "type": "string"
    },
    "payment": {
      "default": "",
      "title": "Payment",
      "type": "string"
    }
  },
  "required": [
    "id",
    "agent"
  ],
  "title": "soma_claimArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_claimOutput"
}
⚪soma_complete(id, result, agent)

Закрыть конверт результатом работы.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "title": "Id",
      "type": "string"
    },
    "result": {
      "title": "Result",
      "type": "string"
    },
    "agent": {
      "default": "",
      "title": "Agent",
      "type": "string"
    }
  },
  "required": [
    "id",
    "result"
  ],
  "title": "soma_completeArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_completeOutput"
}
⚪soma_route(id)

Подобрать исполнителя по capability, мандату и цене. Если кандидата нет — вернётся честная причина отказа.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "title": "Id",
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "title": "soma_routeArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_routeOutput"
}
⚪soma_verify(envelope_json)

Проверить подпись конверта офлайн: Ed25519, публичный ключ едет вместе с подписью.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "envelope_json": {
      "title": "Envelope Json",
      "type": "string"
    }
  },
  "required": [
    "envelope_json"
  ],
  "title": "soma_verifyArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_verifyOutput"
}
⚪soma_stats

Состояние хаба: конверты по статусам, факты, связи, холодные артефакты.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "title": "soma_statsArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_statsOutput"
}
⚪soma_remember(text, tags, importance, kind, source, ...)

Запомнить факт: переживает сессии и смену модели. Теги для поиска, importance 1–5.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "text": {
      "title": "Text",
      "type": "string"
    },
    "tags": {
      "default": "",
      "title": "Tags",
      "type": "string"
    },
    "importance": {
      "default": 3,
      "title": "Importance",
      "type": "integer"
    },
    "kind": {
      "default": "fact",
      "title": "Kind",
      "type": "string"
    },
    "source": {
      "default": "",
      "title": "Source",
      "type": "string"
    },
    "session": {
      "default": "",
      "title": "Session",
      "type": "string"
    }
  },
  "required": [
    "text"
  ],
  "title": "soma_rememberArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_rememberOutput"
}
⚪soma_recall(query, k)

Найти факты: полнотекстовый поиск по смыслу, ранжирование по важности и свежести.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "k": {
      "default": 10,
      "title": "K",
      "type": "integer"
    }
  },
  "required": [
    "query"
  ],
  "title": "soma_recallArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_recallOutput"
}
⚪soma_export(limit)

Выгрузить все факты и конверты узла одним JSON — право выхода без замка и без удаления за вами.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 5000,
      "title": "Limit",
      "type": "integer"
    }
  },
  "title": "soma_exportArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_exportOutput"
}
⚪soma_nonce(agent)

Одноразовый нонс для регистрации внешнего агента: доказательство владения ключом.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "agent": {
      "title": "Agent",
      "type": "string"
    }
  },
  "required": [
    "agent"
  ],
  "title": "soma_nonceArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_nonceOutput"
}
⚪soma_register(agent, public_key, proof, capabilities, cost_per_call)

Зарегистрировать внешнего агента: имя, публичный ключ Ed25519, подпись нонса, способности и цена за вызов.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "agent": {
      "title": "Agent",
      "type": "string"
    },
    "public_key": {
      "title": "Public Key",
      "type": "string"
    },
    "proof": {
      "title": "Proof",
      "type": "string"
    },
    "capabilities": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Capabilities"
    },
    "cost_per_call": {
      "default": 0,
      "title": "Cost Per Call",
      "type": "number"
    }
  },
  "required": [
    "agent",
    "public_key",
    "proof"
  ],
  "title": "soma_registerArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_registerOutput"
}
⚪soma_agents

Реестр агентов: кто зарегистрирован, что умеет, сколько стоит. Публичная витрина доверия.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "title": "soma_agentsArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_agentsOutput"
}
⚪soma_reputation(agent)

Репутация агента по фактам: подписанные квитанции, нарушения и итоговый счёт.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "agent": {
      "title": "Agent",
      "type": "string"
    }
  },
  "required": [
    "agent"
  ],
  "title": "soma_reputationArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_reputationOutput"
}
⚪soma_reflect(query, k, save)

Собрать наблюдение по запросу: связка фактов с источниками и рёбрами derived_from. Ответ указывает, из чего выведен.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "title": "Query",
      "type": "string"
    },
    "k": {
      "default": 8,
      "title": "K",
      "type": "integer"
    },
    "save": {
      "default": true,
      "title": "Save",
      "type": "boolean"
    }
  },
  "required": [
    "query"
  ],
  "title": "soma_reflectArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_reflectOutput"
}
🟡soma_cold_put(text)

Положить большой артефакт в холодный ярус. Возвращает ссылку sha256 — тело не жжёт контекст.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "text": {
      "title": "Text",
      "type": "string"
    }
  },
  "required": [
    "text"
  ],
  "title": "soma_cold_putArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_cold_putOutput"
}
🟢soma_cold_get(ref)

Достать артефакт по ссылке sha256; содержимое сверяется с хешем.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "ref": {
      "title": "Ref",
      "type": "string"
    }
  },
  "required": [
    "ref"
  ],
  "title": "soma_cold_getArguments"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "result": {
      "title": "Result",
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "title": "soma_cold_getOutput"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada17 herramientas