loading…
Search for a command to run...
loading…
26 US federal data domains as 23 MCP tools. Ed25519 signed responses. Free, no API key.
26 US federal data domains as 23 MCP tools. Ed25519 signed responses. Free, no API key.
The data layer of the agent internet.
OPP defines how data providers make their data agent-consumable, verifiable, and discoverable. Three components: provider manifest, response envelope, query interface.
Agents get data naked. No provenance. No freshness guarantee. No confidence score. No way to verify the source. The agent internet is missing its data envelope.
| Component | What it does |
|---|---|
Manifest (/.well-known/opp.json) |
Declares what data a provider serves, how fresh it is, how to verify it |
| Response Envelope | Every response carries domain, source, freshness, confidence, citation, Ed25519 signature |
| Query Interface | Standardized HTTP GET endpoints with predictable parameters |
Live at api.openprimitive.com. 16 US federal data domains across 11 agencies. Level 3 compliant — every response is signed.
curl https://api.openprimitive.com/v1/drugs?name=aspirin
# Returns OPP envelope with proof.type: "DataIntegrityProof"
Use data from an OPP provider:
const res = await fetch('https://api.openprimitive.com/v1/drugs?name=aspirin');
const data = await res.json();
console.log(data.citations.statement);
// "According to FDA FAERS, aspirin has 601,477 reported adverse events"
Implement OPP for your own data:
// 1. Create /.well-known/opp.json (see spec)
// 2. Wrap responses in the OPP envelope
// 3. Optionally sign with Ed25519
Full spec: openprimitive.com/protocol.html
Detailed spec: api.openprimitive.com/spec.html
sdk/opp-client.js — Client library for consuming OPP providerssdk/opp-provider.js — Helper for implementing OPPsdk/opp-validator.js — Validate OPP conformance13 tools for Claude, Cursor, and MCP-compatible agents:
npx open-primitive-mcp
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"open-primitive": {
"command": "npx",
"args": []
}
}
}