wot_influence
Simulate the network impact of following or unfollowing pubkeys by visualizing ripple effects using differential PageRank analysis.
Instructions
Simulate what happens if one pubkey follows/unfollows another. Shows ripple effect across the network using differential PageRank.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pubkey | Yes | The pubkey taking the action | |
| other | Yes | The pubkey being followed/unfollowed | |
| action | No | follow or unfollow | follow |
| payment_hash | No | Payment hash if free tier exhausted |
Implementation Reference
- src/index.ts:251-254 (handler)The handler for the wot_influence tool. It calls wotGet with the provided parameters and formats the result.
async ({ pubkey, other, action, payment_hash }) => { const data = await wotGet("/influence", { pubkey, other, action }, payment_hash); return textResult(formatL402(data)); } - src/index.ts:245-250 (schema)The Zod schema defining the input parameters for the wot_influence tool.
{ pubkey: z.string().describe("The pubkey taking the action"), other: z.string().describe("The pubkey being followed/unfollowed"), action: z.enum(["follow", "unfollow"]).default("follow").describe("follow or unfollow"), payment_hash: z.string().optional().describe("Payment hash if free tier exhausted"), }, - src/index.ts:242-255 (registration)The registration of the wot_influence tool using the server.tool method.
server.tool( "wot_influence", "Simulate what happens if one pubkey follows/unfollows another. Shows ripple effect across the network using differential PageRank.", { pubkey: z.string().describe("The pubkey taking the action"), other: z.string().describe("The pubkey being followed/unfollowed"), action: z.enum(["follow", "unfollow"]).default("follow").describe("follow or unfollow"), payment_hash: z.string().optional().describe("Payment hash if free tier exhausted"), }, async ({ pubkey, other, action, payment_hash }) => { const data = await wotGet("/influence", { pubkey, other, action }, payment_hash); return textResult(formatL402(data)); } );