FIP: Farcaster Mini App Contract Address Metadata #246
Replies: 2 comments 5 replies
-
Thanks for opening a discussion on this. As you identified, the main challenge here is verifying ownership or association with the contract address. The problem is pretty similar to claiming ownership of an NFT collection on a marketplace, which is probably a good place to look for inspiration and past challenges, like edge cases around spoofing. It might be harder in our case because these are more arbitrary contracts that will less often have an "owner". A simple place to start might be something like "contract deployer or |
Beta Was this translation helpful? Give feedback.
-
Thanks for putting this together. We've also been thinking about this but haven't found a design for verification that would work for all tokens / miniapps, as @horsefacts points out. I think that might be the most important thing to nail, because associations without verifications aren't very useful. The second thing that this design implies is a many:many relationship between tokens and miniapps. While that is flexible, I wonder if that will be very confusing for users to reason about. It may be worth mocking the exact UI that a client should show to a user, and thinking through whether that is understandable |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
FIP: Farcaster Mini App Contract Address Metadata
FIP: Farcaster Mini App Contract Address Metadata
Title: Farcaster Mini App Contract Address Metadata
Authors: @samuellhuber
Problem
Farcaster Mini Apps launch tokens and get popular. That leaves fraudulent actors trying to launch impersonations and always leaves users wondering which tokens and contracts are legit.
This could be used to show in the transaction confirmation screen that this token belongs to a mini app or that a contract your interacting with is from a mini app. Overall increasing trust across the ecosystem with these verifications.
One example is Mini Apps integrating with Megapot where they allow the buying of tickets. Well how do I as the user know that these are from the real megapot? I could know if my client shows me these contracts are from the megapot mini app.
An analog case can be made for DeFi integrations like Morpho, Uniswap and others.
Specification
For Mini Apps
Add an array of known contract addresses associated with the mini app to .well-known/farcaster.json manifest.
The format of each contract address shall be defined as per CAIP-19
The result is an extended .well-known/farcaster.json looking like the following samples:
add in a single contract address
add in a set of contract addresses across chains
Ideas for Client Developers
Anyone rendering the data from this extension may decide to now honor it as any contract address could be arbitrarily be used, though this can be extended similarly to FID account associations, where the smart contract deployer wallet has to sign a message including the account association's FID or similar for verification. This is something to be discussed here.
Changelog
2025-08-26: created FIP
Beta Was this translation helpful? Give feedback.
All reactions