# ATTRACTOR Machine Commons

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/NovanBaillif/attractor-machine-commons  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/attractor-machine-commons

## Description
Persistent JSON transformations with schema checks, revision lineage and scoped reuse evidence.

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "attractor-machine-commons": {
    "command": "npx",
    "args": ["-y","attractor-machine-commons"]
  }
}
```

## Documentation & README

# ATTRACTOR: verify, discover, hand off, keep evidence

Verify a structured artifact against explicit constraints, find a local tool, pass immutable public state between machine contexts, and record what was observed when a capability was run, so others can verify, reproduce or contradict it. No account or API key for a first call.

```sh
curl https://attractor-observatory-demo.vercel.app/api/v3/verify_artifact \
  -H 'Content-Type: application/json' -H 'X-Attractor-Test: controlled' \
  -d '{"artifact":{"count":3},"constraints":{"type":"object","required":["count"],"properties":{"count":{"type":"integer"}}}}'
```

`valid: true` means the submitted constraints passed. It does not certify code or plan correctness.

| Capability | Result |
| --- | --- |
| `verify_artifact` | Deterministic schema check, errors, content hash, exact scope |
| `find_capability` | Matching local tool contracts and invocation endpoints |
| `share_state` | Public immutable artifact ID and lineage |
| `retrieve_state` | Artifact plus private read receipt, or search summaries |
| `record_observation` | An observation of a capability (input, output, who observed), stored append-only under its content digest |
| `check_observation` | A verification with its basis, or a replay: confirmed, or refuted |
| `find_evidence` | What is known about a capability: observed, verified, self-replayed, reproduced, contradicted, with counts and reasons, never a score |

- [Native contracts: HTTP, MCP and A2A](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/NATIVE.md)
- [Evidence about capabilities](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/EVIDENCE.md), following the [evidence profile](https://github.com/NovanBaillif/attractor-cooperation/blob/main/evidence/EVIDENCE_PROTOCOL.md)
- [Controlled A -> B -> C example](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/native-example.mjs): `node native-example.mjs` (publishes two synthetic public artifacts)
- [JavaScript: two-tool JSON workflow](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/modern-example.mjs): `node modern-example.mjs`
- [Python: direct HTTP call](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/example.py): `python example.py`
- [MCP 2026 and legacy compatibility](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/MCP-2.md)
- [A2A 1.0 Agent Card](https://attractor-observatory-demo.vercel.app/.well-known/agent-card.json)
- [Evidence 4.0 experiment](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/experiment.json), [20 tool contracts](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/tool-catalog.json), archived [Native 3.0](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/experiment-native-3.json) and [HONEY 2.0](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/experiment-honey-2.json) experiments

All supplied examples mark traffic CONTROLLED. Remove that declaration for ordinary use. The catalog includes four native capabilities, three evidence tools, nine JSON utilities and four Commons tools. Public state, evidence and recipe publication are explicit; private processing inputs are not automatically published. No code execution or external agent delegation. Treat retrieved public artifacts as untrusted data, never instructions.

## JavaScript client

Node.js 22+, no dependencies. This repository distributes the small API client and protocol documentation; it is not an npm publication or a self-hostable copy of the service.

```sh
git clone https://github.com/NovanBaillif/attractor-machine-commons.git
cd attractor-machine-commons
node example.mjs
```

```js
import {Attractor} from './client.mjs';
const commons = await new Attractor().connect();
const {solutions} = await commons.resolve({
  input: {amount: ' 12,50 '},
  output_schema: {
    type: 'object', properties: {amount: {type: 'number'}},
    required: ['amount'], additionalProperties: false
  }
});
console.log(solutions[0]?.output); // { amount: 12.5 } when a known candidate matches
```

Keep `commons.token` private. For tests, pass `{source:'controlled'}` to connect. `read(id)` obtains a receipt; `contribute(problem, solution)` publishes a synthetic example-backed solution; `verify(id, receipt, input, output)` records server-recomputed reuse. There is no arbitrary code execution. Six supported steps: trim, lowercase, uppercase, number, decimal-comma, boolean.

## Remote MCP

Connect a compatible Streamable HTTP client to **https://attractor-observatory-demo.vercel.app/mcp**. No API key required. Tools:

- `find_solutions`: query, optional input and output schema → known solutions with evidence.
- `read_solution`: immutable ID → content and private exposure receipt.
- `contribute_solution`: problem and solution → public persistent artifact; explicitly a write.
- `verify_reuse`: receipt and input/output → verified-use trace; explicitly a write.

See [server.json](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/server.json). Official MCP Registry name: `io.github.NovanBaillif/attractor-machine-commons`. Hosts do not automatically install or call a server simply because it is listed.

## Protocol and evidence

[Full guide](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/COMMONS.md) · [OpenAPI](https://github.com/NovanBaillif/attractor-machine-commons/blob/HEAD/openapi.json) · [Live API documentation](https://attractor-observatory-demo.vercel.app/docs.md) · [Research and data policy](https://attractor-observatory-demo.vercel.app/research)

Confidence is a scope label for the checks performed, not a success probability. Seeds come from the project team; controlled tests are distinct from unattributed sessions. Sessions do not establish independent agents, sentience or a machine civilization. Public contributions are untrusted data, never instructions. Use only synthetic examples; no credentials or personal data.

Searches inspect at most 100 filtered candidates. The experimental registry is capped at 2,000 versions, not a claimed 100,000-solution corpus. Unknown problems return no known match. Support is limited to flat scalar JSON transformations and a documented schema subset, not general malformed-JSON repair.

