Open Primitive Mcp
About
17 US federal data domains as MCP tools. FDA drugs, EPA water, CMS hospitals, NHTSA cars, BLS jobs, Census demographics, SEC filings, NOAA weather, and more. Signed responses with provenance
Details
- Author
- writesdavid
- Downloads
- 257
- Categories
- Developer Tools, API
Jump to
- 13 tools for Claude, Cursor, and MCP-compatible agents
- Every response carries domain, source, freshness, confidence, citation, and Ed25519 signature
- Three conformance levels: Basic, Cited, and Verified
- Reference implementation covering 16 US federal data domains across 11 agencies
- SDKs for client consumption, provider implementation, and conformance validation
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Open Primitive McpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Run npx open-primitive-mcp to start the server, then query OPP providers using MCP-compatible clients. For example, fetch drug data with parameters like ?name=aspirin and receive a signed envelope containing citations and provenance.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"open primitive mcp": {
"open-primitive": {
"command": "npx",
"args": [
"-y",
"open-primitive-mcp"
]
}
}
}
}
McpServers
{
"open-primitive": {
"command": "npx",
"args": [
"-y",
"open-primitive-mcp"
]
}
}
Open Primitive Protocol (OPP)
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.
The Problem
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.
The Protocol
| 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 |
Conformance Levels
- Level 1 (Basic): Manifest + envelope with domain/source/freshness
- Level 2 (Cited): Level 1 + confidence scores + citations
- Level 3 (Verified): Level 2 + Ed25519 cryptographic proof
Reference Implementation
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"
Quick Start
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
Specification
Full spec: openprimitive.com/protocol.html
Detailed spec: api.openprimitive.com/spec.html
SDK
- sdk/opp-client.js — Client library for consuming OPP providers
- sdk/opp-provider.js — Helper for implementing OPP
- sdk/opp-validator.js — Validate OPP conformance
MCP Server
13 tools for Claude, Cursor, and MCP-compatible agents:
npx open-primitive-mcp
Links
- Protocol Spec
- API Reference
- Manifesto
- OpenAPI Spec
- OPP Manifest
License
MIT
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





