Complete guide to all 14 MCP tools and 10 REST API endpoints
- Server: http://localhost:9200/mcp
- Auth: OAuth 2.1 (Bearer token with
neriamindscope) - Clients: Cursor, VS Code, Claude Desktop, etc.
- Base: http://localhost:9200
- Auth: OAuth 2.1 Bearer token
- Docs: http://localhost:9200/swagger (interactive)
Retrieve Wikipedia content via MediaWiki API.
Input:
topic(string): Wikipedia page title
Returns: Summary, images, videos, full content flag
Example:
{
"topic": "Quantum_computing",
"title": "Quantum computing",
"summary": "Quantum computing is...",
"url": "https://en.wikipedia.org/wiki/Quantum_computing",
"images": [...],
"videos": [...]
}Scrape Grokipedia content via Puppeteer.
Input:
topic(string): Topic name
Returns: Summary, content, images, videos, fact-check metadata
Multi-modal comparison of Wikipedia vs Grokipedia.
Input:
topic(string): Topic to comparewikipediaOverride(string, optional): Manual Wikipedia contentgrokopediaOverride(string, optional): Manual Grokipedia contentpublish(boolean, optional): Publish Truth Note to DKGvisibility('public'|'private', optional): Asset visibilityepochs(number, 1-24, optional): Storage duration
Returns:
{
"topic": "Quantum_computing",
"divergenceScore": 0.24,
"similarity": 0.76,
"discrepancies": {
"factualInconsistencies": [...],
"missingContext": [...],
"aiHallucinations": [...],
"bias": [...]
},
"analysis": {
"textSimilarity": 0.85,
"imageSimilarity": 0.90,
"structuralDifferences": [...]
},
"ual": "did:dkg:otp:20430/..." // If published
}Retrieve truth note by UAL.
Input:
ual(string): Knowledge Asset UALincludeMetadata(boolean, optional): Include metadata
Returns: Truth Note assertion data (JSON-LD)
List published truth notes.
Input:
topic(string, optional): Filter by topicpublisher(string, optional): Filter by publisherlimit(number, max 100, optional): Result limit
Returns: Array of truth notes with UALs
Publish curated topics to DKG.
Input:
topics(array, optional): Custom topicsuseCuratedTopics(boolean, optional): Use 8 predefined topicsvisibility('public'|'private', optional)epochs(number, 1-24, optional)
Returns: Published topics with UALs and Explorer links
8 Curated Topics:
- Quantum_computing
- Climate_change
- Artificial_intelligence
- Bitcoin
- Elon_Musk
- COVID-19_pandemic
- Renewable_energy
- Machine_learning
Query published topics from DKG.
Input:
publisherAddress(string, optional): Filter by publishersource('NeriaMind'|'all', optional): Filter by sourceualList(array, optional): Direct UAL listlimit(number, max 100, optional)
Returns: List of topics with metadata
End-to-end workflow: Query → Compare → Publish.
Input:
publisherAddress(string, optional)source('NeriaMind'|'all', optional)ualList(array, optional)limit(number, max 50, optional)publishNotes(boolean, optional): Auto-publish notesvisibility('public'|'private', optional)epochs(number, 1-24, optional)
Returns: Processing results with all UALs
Search DKG for topic-related Knowledge Assets.
Input:
topic(string): Topic namelimit(number, max 100, optional)
Returns: Matching Knowledge Assets
Execute SPARQL queries on DKG.
Input:
query(string): SPARQL queryqueryType('SELECT'|'CONSTRUCT'|'ASK'|'DESCRIBE', optional)paranetUAL(string, optional): Scope to paranet
Returns: Query results
Search topics in published truth notes.
Input:
query(string): Search querylimit(number, max 100, optional)
Returns: Matching truth notes
Access premium content via x402 payment.
Input:
ual(string): Truth note UAL
Returns: Payment status and invoice
Requires: FACILITATOR_PRIVATE_KEY in .env
Stake tokens on truth note accuracy.
Input:
ual(string): Truth note UALamount(number): Stake amounttoken('TRAC'|'NEURO'): Token type
Returns: Stake confirmation
Get confidence metrics for truth note.
Input:
ual(string): Truth note UAL
Returns:
{
"confidenceScore": 0.991,
"totalStaked": { "TRAC": 300, "NEURO": 50 },
"stakerCount": 3,
"verificationStatus": "verified",
"isPremium": true
}Base Path: /neriamind/*
Auth: OAuth 2.1 Bearer token with neriamind scope
Compare Wikipedia vs Grokipedia for a topic.
Body:
{
"topic": "Quantum_computing",
"publish": true,
"visibility": "public",
"epochs": 6
}Response: Comparison result with UAL (if published)
Retrieve truth note (moved to root /truth-note for x402).
Publish curated topics to DKG.
Body:
{
"useCuratedTopics": true,
"visibility": "public",
"epochs": 6
}Query published topics from DKG.
Query Params:
publisherAddress(optional)source(optional)limit(optional, max 100)
Simulated x402 payment (MCP tool available).
Check payment status.
List stakes for truth note (MCP tool available).
Base Path: /facilitator/*
Auth: Public (no auth required for protocol compliance)
List supported payment networks.
Response:
{
"kinds": [
{
"x402Version": 1,
"scheme": "exact",
"network": "neuroweb-testnet"
}
]
}Verify payment signature.
Body: Payment signature data Response: Verification result
Settle payment on NeuroWeb blockchain.
Body: Payment details Response: Transaction hash
Base Path: /truth-note
Auth: Public (x402 handles access control)
Retrieve truth note (402 for premium).
Response:
- Free notes: HTTP 200 + truth note data
- Premium notes: HTTP 402 + payment requirements
Base Path: /trust/*
Auth: Public
Record stake on truth note.
Body:
{
"ual": "did:dkg:otp:20430/...",
"amount": 100,
"token": "TRAC",
"staker": "0x..."
}List all stakes for truth note.
Calculate confidence metrics.
Response:
{
"confidenceScore": 0.991,
"totalStaked": { "TRAC": 300, "NEURO": 50 },
"stakerCount": 3,
"verificationStatus": "verified",
"isPremium": true
}# Test facilitator
curl http://localhost:9200/facilitator/supported
# Test premium note (402)
curl http://localhost:9200/truth-note?ual=did:dkg:otp:20430/0x...01/1
# Test staking
curl -X POST http://localhost:9200/trust/stake \
-H "Content-Type: application/json" \
-d '{"ual":"test","amount":100,"token":"TRAC","staker":"0xTest"}'
# Check metrics
curl http://localhost:9200/trust/metrics?ual=testSwagger UI: http://localhost:9200/swagger
All endpoints are documented with:
- Request/response schemas
- Example payloads
- Try-it-out functionality
For detailed architecture: See ARCHITECTURE.md For setup instructions: See README.md