DailyDrop Shield is a Proof of Presence protocol on Celo and Base. It verifies real humans by their on-chain daily check-in streak — no KYC, no passport, just behavioral proof. Users check in once per day on-chain. After 7 consecutive days, they earn 10 DROP tokens. The streak is immutable and can't be faked retroactively. Any project can call the free public API to verify a wallet: GET /api/verify?address=0x...&minStreak=7 Use cases: airdrop sybil filtering, DAO voting weight, NFT allowlists, DeFi APY boosts. MCP Server: 4 tools — verify_streak, get_profile, verify_batch, get_stats SDK: npm install @dailydrop/shield Live: https://dailydrop-five.vercel.app
The seven checks, with their evidence
7 recordedRegistered?rung 1 · registered
passThe agent exists in the on-chain registry, with an owner and a document URL.
passed
- block_number
- 74443315
- chain_id
- 42220
- token_id
- 9421
checked at 2026-08-10T07:05:27.167090Z
Reachable?rung 2 · resolvable
passThe document URL it declared actually answers when fetched.
passed
- bytes
- 1529
- data_uri_variant
- base64
- inline
- true
- scheme
- data
- uri
data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjE… (2,069 chars — expand)
data:application/json;base64,ewogICJ0eXBlIjogImh0dHBzOi8vZWlwcy5ldGhlcmV1bS5vcmcvRUlQUy9laXAtODAwNCNyZWdpc3RyYXRpb24tdjEiLAogICJuYW1lIjogIkRhaWx5RHJvcCBTaGllbGQgQWdlbnQiLAogICJkZXNjcmlwdGlvbiI6ICJEYWlseURyb3AgU2hpZWxkIGlzIGEgUHJvb2Ygb2YgUHJlc2VuY2UgcHJvdG9jb2wgb24gQ2VsbyBhbmQgQmFzZS4gSXQgdmVyaWZpZXMgcmVhbCBodW1hbnMgYnkgdGhlaXIgb24tY2hhaW4gZGFpbHkgY2hlY2staW4gc3RyZWFrIOKAlCBubyBLWUMsIG5vIHBhc3Nwb3J0LCBqdXN0IGJlaGF2aW9yYWwgcHJvb2YuXG5cblVzZXJzIGNoZWNrIGluIG9uY2UgcGVyIGRheSBvbi1jaGFpbi4gQWZ0ZXIgNyBjb25zZWN1dGl2ZSBkYXlzLCB0aGV5IGVhcm4gMTAgRFJPUCB0b2tlbnMuIFRoZSBzdHJlYWsgaXMgaW1tdXRhYmxlIGFuZCBjYW4ndCBiZSBmYWtlZCByZXRyb2FjdGl2ZWx5LlxuXG5BbnkgcHJvamVjdCBjYW4gY2FsbCB0aGUgZnJlZSBwdWJsaWMgQVBJIHRvIHZlcmlmeSBhIHdhbGxldDogR0VUIC9hcGkvdmVyaWZ5P2FkZHJlc3M9MHguLi4mbWluU3RyZWFrPTdcblxuVXNlIGNhc2VzOiBhaXJkcm9wIHN5YmlsIGZpbHRlcmluZywgREFPIHZvdGluZyB3ZWlnaHQsIE5GVCBhbGxvd2xpc3RzLCBEZUZpIEFQWSBib29zdHMuXG5cbk1DUCBTZXJ2ZXI6IDQgdG9vbHMg4oCUIHZlcmlmeV9zdHJlYWssIGdldF9wcm9maWxlLCB2ZXJpZnlfYmF0Y2gsIGdldF9zdGF0c1xuU0RLOiBucG0gaW5zdGFsbCBAZGFpbHlkcm9wL3NoaWVsZFxuTGl2ZTogaHR0cHM6Ly9kYWlseWRyb3AtZml2ZS52ZXJjZWwuYXBwIiwKICAiaW1hZ2UiOiAiaHR0cHM6Ly9kYWlseWRyb3AtZml2ZS52ZXJjZWwuYXBwL2ljb24tNTEyLnBuZyIsCiAgInNlcnZpY2VzIjogWwogICAgewogICAgICAibmFtZSI6ICJNQ1AiLAogICAgICAiZW5kcG9pbnQiOiAiaHR0cHM6Ly9kYWlseWRyb3AtZml2ZS52ZXJjZWwuYXBwL2FwaS9tY3AiCiAgICB9LAogICAgewogICAgICAibmFtZSI6ICJPQVNGIiwKICAgICAgImVuZHBvaW50IjogImh0dHBzOi8vZ2l0aHViLmNvbS9hZ250Y3kvb2FzZi8iLAogICAgICAic2tpbGxzIjogWwogICAgICAgICJnb3Zlcm5hbmNlX2NvbXBsaWFuY2UvY29tcGxpYW5jZV9hc3Nlc3NtZW50IiwKICAgICAgICAiZ292ZXJuYW5jZV9jb21wbGlhbmNlL3Jpc2tfY2xhc3NpZmljYXRpb24iLAogICAgICAgICJldmFsdWF0aW9uX21vbml0b3JpbmcvYW5vbWFseV9kZXRlY3Rpb24iCiAgICAgIF0sCiAgICAgICJkb21haW5zIjogWwogICAgICAgICJmaW5hbmNlX2FuZF9idXNpbmVzcy9maW5hbmNlIiwKICAgICAgICAiZmluYW5jZV9hbmRfYnVzaW5lc3MvZmluYW5jZV9hbmRfYnVzaW5lc3MiLAogICAgICAgICJmaW5hbmNlX2FuZF9idXNpbmVzcy9iYW5raW5nIgogICAgICBdCiAgICB9CiAgXSwKICAicmVnaXN0cmF0aW9ucyI6IFtdLAogICJzdXBwb3J0ZWRUcnVzdHMiOiBbCiAgICAicmVwdXRhdGlvbiIKICBdLAogICJhY3RpdmUiOiB0cnVlLAogICJ4NDAyc3VwcG9ydCI6IGZhbHNlCn0=
checked at 2026-08-10T07:05:27.167090Z
Readable?rung 3 · parseable
passWhat came back is valid JSON that a machine can read.
passed
- body_bytes
- 1529
- body_sha256
- c923ee3f1effccc5c83fccd2de8aa7aa1754178295c40e0fe51fa023b16c0535
- content_type
- —
checked at 2026-08-10T07:05:27.167090Z
Follows the spec?rung 4 · conformant
passThe document meets what ERC-8004 requires of it.
passed
- both_fields_present
- false
- legacy_endpoints_field
- false
- may_gaps
- x402Support, supportedTrust
- must_violations
- (empty)
- registrations_checked
- 0
- services_field_source
- services
- services_status
- present
- should_gaps
- services[].version, registrations
- spec_commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
checked at 2026-08-10T07:05:27.167090Z
Claims its identity?rung 5 · bound
unclaimedThe document names the on-chain agent it belongs to, rather than leaving it unsaid.
unclaimed — the document made no claim to check
- declared_agent_id
- —
- declared_chain
- —
- declared_registry
- —
- match
- —
- reason
- unclaimed
- registrations_seen
- 0
checked at 2026-08-10T07:05:27.167090Z
Answers?rung 6 · live
passA declared endpoint responds to a probe. Not implemented yet, so nobody passes or fails it.
passed
- endpoints
{"declared":"https://dailydrop-five.vercel.app/api/mcp","elapsed_ms":1600,"final_url":"https://dailydrop-five.vercel.app… (521 chars — expand)
{"declared":"https://dailydrop-five.vercel.app/api/mcp","elapsed_ms":1600,"final_url":"https://dailydrop-five.vercel.app/api/mcp","http_status":200,"index":0,"kind":"https","name":"MCP","outcome":"live","probed":true,"probed_url":"https://dailydrop-five.vercel.app/api/mcp"}, {"declared":"https://github.com/agntcy/oasf/","elapsed_ms":2334,"final_url":"https://github.com/agntcy/oasf/","http_status":200,"index":1,"kind":"https","name":"OASF","outcome":"live","probed":true,"probed_url":"https://github.com/agntcy/oasf/"}- endpoints_answered_not_live
- 0
- endpoints_declared
- 2
- endpoints_live
- 2
- endpoints_our_error
- 0
- endpoints_payment_gated
- 0
- endpoints_probeable
- 2
- endpoints_probed
- 2
- endpoints_refused
- 0
checked at 2026-08-10T07:07:52.226139Z
Has feedback?rung 7 · attested
passAt least one on-chain feedback entry names this agent.
passed
- distinct_authors
- 2
- feedback_count
- 2
checked at 2026-08-10T07:05:27.167090Z
Check it again, now
outside the censusOn-chain snapshot
celo- token id
- 9421
- owner
- 0xdeacde6ec27fd0cd972c1232c4f0d4171dda2357
- block
- 74,443,315
- observed
- 2026-08-10T07:05:27.170367Z
What the fetch saw
data- scheme
- data
- request url
- —
- final url
- —
- http status
- —
- content type
- —
- size
- 1,529 bytes
- sha256
- c923ee3f1effccc5c83fccd2de8aa7aa1754178295c40e0fe51fa023b16c0535
- elapsed
- 0 ms
This run
reproducible- run
- 4131a5a1-0461-46ce-b393-bcd825d2113b
- chain
- celo
- pinned block
- 74,443,315
- agents
- 9,765
- started
- 2026-08-10T06:41:13.909696Z
- finished
- 2026-08-10T07:06:42.747601Z
- checker
- 0.7.0 · 55deaa9ce71c025a9199311a53cdc2de236eae53
- spec commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
cargo run -p sweeper -- celo # at block 74443315