Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,537Letters: 14Defects: 1,323counted 2 min ago
teppi

Server definition

Hash
sha256:c8f4afef7073f1fa0efb5a5a4be6f3a2ea4806e8dc6bcb20653456366e9280c9
What it is
What a remote MCP server returned when asked what it offers: 23 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "MUTATES Raisely data: records a donation (use for OFFLINE/manual donations — e.g. cash or cheque). Raisely API: POST /donations with the body wrapped as { data: {...} }. Required by the API: amount (integer, in cents/smallest currency unit), currency (3-letter code), email (donor), type (ONLINE or OFFLINE), method (payment gateway, e.g. OFFLINE). Link it to a campaign/profile via campaignUuid/profileUuid. Everything else (firstName, lastName, message, date, items, public, private, ...) goes through `fields`. Returns the created donation.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "amount": { "description": "Total donation amount in the smallest currency unit (e.g. cents). Required.", "maximum": 9007199254740991, "minimum": -9007199254740991, "type": "integer" }, "campaignUuid": { "description": "Uuid of the campaign the donation belongs to.", "type": "string" }, "currency": { "description": "3-letter currency code, e.g. AUD, USD, GBP. Required.", "type": "string" }, "email": { "description": "Email address of the donor. Required.", "type": "string" }, "fields": { "additionalProperties": {}, "description": "Additional documented Raisely fields to send in the JSON write body's `data` object — merged OVER the typed fields above.", "propertyNames": { "type": "string" }, "type": "object" }, "firstName": { "description": "Donor first name.", "type": "string" }, "lastName": { "description": "Donor last name.", "type": "string" }, "method": { "description": "The payment gateway/method, e.g. \"OFFLINE\", \"CREDIT\". Required by the API.", "type": "string" }, "profileUuid": { "description": "Uuid of the fundraising profile the donation is credited to.", "type": "string" }, "type": { "description": "ONLINE or OFFLINE (default OFFLINE — this tool is for manual/offline donations).", "type": "string" } }, "required": [ "amount", "currency", "email" ], "type": "object" }, "name": "create_donation", "outputSchema": null }, { "description": "MUTATES Raisely data: publishes a post (a campaign/profile update). Raisely API: POST /posts with the body wrapped as { data: {...} }. Required by the API: path (the post's URL slug), body (the content), photoUrl. Link it to a profile via profileUuid (pass through `fields`). Extra fields (title, date, ...) via `fields`. Returns the created post.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "body": { "description": "The post content/body. Required by the API.", "type": "string" }, "fields": { "additionalProperties": {}, "description": "Additional documented Raisely fields to send in the JSON write body's `data` object — merged OVER the typed fields above.", "propertyNames": { "type": "string" }, "type": "object" }, "path": { "description": "The post's URL slug/path. Required by the API.", "type": "string" }, "photoUrl": { "description": "URL of the post's photo. Required by the API.", "type": "string" }, "title": { "description": "The post title.", "type": "string" } }, "required": [ "path", "body" ], "type": "object" }, "name": "create_post", "outputSchema": null }, { "description": "Verify credentials and show the currently authenticated user plus their privileges. Raisely API: GET /authenticate. Use this first to confirm RAISELY_API_KEY works. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "get_authenticated_user", "outputSchema": null }, { "description": "Fetch a single campaign by id or path/slug. Raisely API: GET /campaigns/{campaign}. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "campaign": { "description": "The campaign uuid or URL path/slug.", "type": "string" } }, "required": [ "campaign" ], "type": "object" }, "name": "get_campaign", "outputSchema": null }, { "description": "Fetch a single donation by uuid. Raisely API: GET /donations/{uuid}. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "uuid": { "description": "The donation uuid.", "type": "string" } }, "required": [ "uuid" ], "type": "object" }, "name": "get_donation", "outputSchema": null }, { "description": "Fetch a single fundraising profile by path (a URL slug OR the uuid — a string either way). Raisely API: GET /profiles/{path}. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "path": { "description": "The profile path (URL slug) or uuid.", "type": "string" } }, "required": [ "path" ], "type": "object" }, "name": "get_profile", "outputSchema": null }, { "description": "Fetch a single subscription (recurring donation) by uuid. Raisely API: GET /subscriptions/{uuid}. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "uuid": { "description": "The subscription uuid.", "type": "string" } }, "required": [ "uuid" ], "type": "object" }, "name": "get_subscription", "outputSchema": null }, { "description": "Fetch a single user (donor/supporter) by uuid. Raisely API: GET /users/{uuid}. Returns { data:{...} }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "uuid": { "description": "The user uuid.", "type": "string" } }, "required": [ "uuid" ], "type": "object" }, "name": "get_user", "outputSchema": null }, { "description": "Convenience: list donations for a specific campaign. Raisely API: GET /campaigns/{campaign}/donations. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "campaign": { "description": "The campaign uuid or URL path/slug.", "type": "string" }, "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "required": [ "campaign" ], "type": "object" }, "name": "list_campaign_donations", "outputSchema": null }, { "description": "Convenience: list fundraising profiles for a specific campaign. Raisely API: GET /campaigns/{campaign}/profiles. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "campaign": { "description": "The campaign uuid or URL path/slug.", "type": "string" }, "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "required": [ "campaign" ], "type": "object" }, "name": "list_campaign_profiles", "outputSchema": null }, { "description": "List fundraising campaigns. Raisely API: GET /campaigns. Returns the list envelope { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_campaigns", "outputSchema": null }, { "description": "List donations. Raisely API: GET /donations. Filter via `params` (e.g. campaign, status, sort, order). Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_donations", "outputSchema": null }, { "description": "List orders (ticket/product purchases). Raisely API: GET /orders. Filter via `params`. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_orders", "outputSchema": null }, { "description": "List posts (campaign/profile updates). Raisely API: GET /posts. Filter via `params`. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_posts", "outputSchema": null }, { "description": "List fundraising profiles (individual/team fundraising pages). Raisely API: GET /profiles. Filter via `params` (e.g. campaign, type, sort, order). Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_profiles", "outputSchema": null }, { "description": "List saved audience segments. Raisely API: GET /segments. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_segments", "outputSchema": null }, { "description": "List subscriptions (recurring donations). Raisely API: GET /subscriptions. Filter via `params`. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_subscriptions", "outputSchema": null }, { "description": "List tags used to label records. Raisely API: GET /tags. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_tags", "outputSchema": null }, { "description": "Convenience: a donor's giving history. Raisely API: GET /users/{uuid}/donations. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" }, "uuid": { "description": "The user uuid.", "type": "string" } }, "required": [ "uuid" ], "type": "object" }, "name": "list_user_donations", "outputSchema": null }, { "description": "List users (donors/supporters/fundraisers). Raisely API: GET /users. Filter via `params`. Returns { data:[...], pagination }.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Max records to return (Raisely `limit`, default 20).", "maximum": 100, "minimum": 1, "type": "integer" }, "offset": { "description": "Records to skip for pagination (Raisely `offset`, default 0).", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "params": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "number" }, { "type": "boolean" } ] }, "description": "Additional documented query-string filters to send verbatim (e.g. campaign, status, sort, order, private) — merged with the typed limit/offset above.", "propertyNames": { "type": "string" }, "type": "object" } }, "type": "object" }, "name": "list_users", "outputSchema": null }, { "description": "Power-user escape hatch: GET any Raisely API path not wrapped by a dedicated tool. READ-ONLY — only GET is allowed. Pass the FULL API path after the base, starting with a slash, INCLUDING any query string, e.g. \"/subscriptions/{uuid}/donations\" or \"/donations?limit=50\". Returns the parsed JSON.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "path": { "description": "Full API path after the base, starting with \"/\", e.g. \"/donations?limit=50\".", "type": "string" } }, "required": [ "path" ], "type": "object" }, "name": "raisely_request", "outputSchema": null }, { "description": "MUTATES Raisely data: updates a fundraising profile's goal/name/story. Raisely API: PATCH /profiles/{path} with the body wrapped as { data: {...} } (only included fields change). Use `fields` for goal, name, description/story, public, private, and any other documented field. Set overwriteCustomFields:true to overwrite (rather than preserve) unspecified custom fields. The path is never sent in the body.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "fields": { "additionalProperties": {}, "description": "Additional documented Raisely fields to send in the JSON write body's `data` object — merged OVER the typed fields above.", "propertyNames": { "type": "string" }, "type": "object" }, "goal": { "description": "New fundraising goal (in the smallest currency unit).", "type": "number" }, "name": { "description": "New profile name.", "type": "string" }, "overwriteCustomFields": { "description": "When true, overwrite (instead of preserve) custom fields not included in this update.", "type": "boolean" }, "path": { "description": "The profile path (URL slug) or uuid to update (path only; required).", "type": "string" } }, "required": [ "path" ], "type": "object" }, "name": "update_profile", "outputSchema": null }, { "description": "MUTATES Raisely data: creates OR updates a supporter/donor, matched by email (safer than a plain create — no duplicates). Raisely API: POST /users/upsert with the body wrapped as { data: {...} }. Typed: email (the match key), firstName, lastName; everything else (phoneNumber, address, public, private, ...) via `fields`. Returns the upserted user.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "email": { "description": "The user's email address — the match key for upsert. Required.", "type": "string" }, "fields": { "additionalProperties": {}, "description": "Additional documented Raisely fields to send in the JSON write body's `data` object — merged OVER the typed fields above.", "propertyNames": { "type": "string" }, "type": "object" }, "firstName": { "description": "User first name.", "type": "string" }, "lastName": { "description": "User last name.", "type": "string" } }, "required": [ "email" ], "type": "object" }, "name": "upsert_user", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:c8f4afef7073f1fa0efb5a5a4be6f3a2ea4806e8dc6bcb20653456366e9280c9 | sha256sum