{"tools":[{"kind":"tool","id":"78576cfe-3b07-4c34-8fa0-e777e6b286da","slug":"penguin-goal-data","name":"Penguin Goal Data","logoUrl":null,"description":"Returns one deterministic observation per call and signals when the requested demo goal has reached its target step.","category":"developer-tools","tags":["demo","goal","data","fastapi"],"provider":{"id":"5ef03290-1fcb-4128-b29c-29c47ca556c3","name":"Markgit Penguin Demo","trustTier":"basic"},"version":{"number":1,"manifestDigest":"c161b69317715e4a5b5a772dbc65eafd318d5a7cf093c2cedee72f1db2adbb35","immutable":true},"trust":{"provider":{"tier":"basic","paymentVerified":false},"endpoint":{"status":"verified","origin":"https://api.markgit.com","verifiedAt":"2026-08-01T21:33:43.033Z"},"version":{"status":"versioned","manifestDigest":"c161b69317715e4a5b5a772dbc65eafd318d5a7cf093c2cedee72f1db2adbb35"},"behavior":{"status":"new","evidence":"markgit_calls"}},"risk":{"level":"medium","capabilities":{"declared":true,"readOnly":true,"destructive":false,"idempotent":true,"openWorld":true,"readsPrivateData":false,"seesUntrustedContent":true,"writesExternalData":false,"sendsMessages":false,"spendsMoney":false,"executesCode":false,"requiresUserCredential":false,"allowedOutboundDomains":["api.markgit.com"],"dataRetention":"none"}},"policy":{"callable":false,"monetizationEligible":false,"eligibleForAutoCall":false,"riskLevel":"medium","approval":{"requirement":"blocked","manifestDigest":"c161b69317715e4a5b5a772dbc65eafd318d5a7cf093c2cedee72f1db2adbb35"},"reasons":["paid provider has not completed payment verification"]},"usage":{"count":3,"uniqueUsers":1,"tracked":true,"coverage":"markgit_calls","invocationsLabel":"Under 1K invokes","usersLabel":"Under 100 users"},"pricing":{"type":"per_call","currency":"USD","amount":"0.1000"},"inputSchema":{"type":"object","required":["goal","step"],"properties":{"goal":{"type":"string","maxLength":500,"minLength":1},"step":{"type":"integer","maximum":5,"minimum":1},"targetSteps":{"type":"integer","default":3,"maximum":5,"minimum":1}},"additionalProperties":false},"outputSchema":{"type":"object","required":["goal","step","datum","goalAchieved"],"properties":{"goal":{"type":"string"},"step":{"type":"integer"},"datum":{"type":"string"},"goalAchieved":{"type":"boolean"}}},"access":{"mode":"gateway","endpoint":{"method":"POST","path":"/v1/tools/penguin-goal-data/call"}},"documentation":{"json":"/v1/registry/tools/penguin-goal-data/docs","openapi":"/v1/registry/tools/penguin-goal-data/openapi.json","llms":"/v1/registry/tools/penguin-goal-data/llms.txt","human":"/tools/penguin-goal-data"},"updatedAt":"2026-08-01T21:32:42.621Z"},{"kind":"tool","id":"bfd220c7-2bfd-4d1d-8701-e737636b22f0","slug":"usgs-earthquake-search","name":"Earthquake Search","logoUrl":null,"description":"Search the official USGS earthquake catalog and receive GeoJSON suitable for maps and agent analysis. Upstream docs: https://earthquake.usgs.gov/fdsnws/event/1/","category":"Data","tags":["earthquakes","geospatial","geojson","science","free","usgs"],"provider":{"id":"200c75ab-f76c-4457-b8f0-d2694de41c12","name":"Open-Meteo","trustTier":"unverified"},"version":{"number":1,"manifestDigest":"a00a937bc6f6535133cdabe741b4247d1a69bf4a4abc4af195007e3070985b41","immutable":true},"trust":{"provider":{"tier":"unverified","paymentVerified":false},"endpoint":{"status":"unverified","origin":"https://earthquake.usgs.gov","verifiedAt":null},"version":{"status":"versioned","manifestDigest":"a00a937bc6f6535133cdabe741b4247d1a69bf4a4abc4af195007e3070985b41"},"behavior":{"status":"new","evidence":"markgit_calls"}},"risk":{"level":"medium","capabilities":{"declared":true,"readOnly":true,"destructive":false,"idempotent":false,"openWorld":true,"readsPrivateData":false,"seesUntrustedContent":false,"writesExternalData":false,"sendsMessages":false,"spendsMoney":false,"executesCode":false,"requiresUserCredential":false,"allowedOutboundDomains":["earthquake.usgs.gov"],"dataRetention":"unknown"}},"policy":{"callable":true,"monetizationEligible":true,"eligibleForAutoCall":false,"riskLevel":"medium","approval":{"requirement":"explicit_unverified","manifestDigest":"a00a937bc6f6535133cdabe741b4247d1a69bf4a4abc4af195007e3070985b41"},"reasons":["endpoint origin is not verified"]},"usage":{"count":0,"uniqueUsers":0,"tracked":true,"coverage":"markgit_calls","invocationsLabel":"Under 1K invokes","usersLabel":"Under 100 users"},"pricing":{"type":"free","currency":"USD","amount":"0.0000"},"inputSchema":{"type":"object","required":["starttime"],"properties":{"limit":{"type":"integer","default":10,"maximum":100,"minimum":1,"description":"Maximum number of events to return."},"endtime":{"type":"string","format":"date","example":"2026-07-24","description":"Optional latest event date in YYYY-MM-DD format."},"orderby":{"enum":["time","time-asc","magnitude","magnitude-asc"],"type":"string","default":"time"},"starttime":{"type":"string","format":"date","example":"2026-07-20","description":"Earliest event date in YYYY-MM-DD format."},"minmagnitude":{"type":"number","default":4,"maximum":10,"minimum":-1,"description":"Minimum event magnitude."}}},"outputSchema":{"type":"object","required":["type","metadata","features"],"properties":{"type":{"const":"FeatureCollection"},"features":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"geometry":{"type":"object","properties":{"type":{"const":"Point"},"coordinates":{"type":"array","items":{"type":"number"}}}},"properties":{"type":"object","properties":{"mag":{"type":["number","null"]},"url":{"type":"string","format":"uri"},"time":{"type":"integer"},"place":{"type":["string","null"]}}}}}},"metadata":{"type":"object","properties":{"count":{"type":"integer"},"title":{"type":"string"},"status":{"type":"integer"}}}}},"access":{"mode":"gateway","endpoint":{"method":"POST","path":"/v1/tools/usgs-earthquake-search/call"}},"documentation":{"json":"/v1/registry/tools/usgs-earthquake-search/docs","openapi":"/v1/registry/tools/usgs-earthquake-search/openapi.json","llms":"/v1/registry/tools/usgs-earthquake-search/llms.txt","human":"/tools/usgs-earthquake-search"},"updatedAt":"2026-08-01T15:51:47.677Z"},{"kind":"tool","id":"40da2f8d-abbc-40a2-818d-3bfc46afbb74","slug":"nager-public-holidays","name":"Public Holidays","logoUrl":null,"description":"List national and regional public holidays for a country and year using the open-source Nager holiday API. Upstream docs: https://date.nager.at/api","category":"Productivity","tags":["calendar","holidays","countries","planning","free","nager"],"provider":{"id":"200c75ab-f76c-4457-b8f0-d2694de41c12","name":"Open-Meteo","trustTier":"unverified"},"version":{"number":1,"manifestDigest":"5bd2c349ed15036a64d536dcc74bd7d0033e29e08349f8b0befb94c23869d72d","immutable":true},"trust":{"provider":{"tier":"unverified","paymentVerified":false},"endpoint":{"status":"unverified","origin":"https://nagerholidays.com","verifiedAt":null},"version":{"status":"versioned","manifestDigest":"5bd2c349ed15036a64d536dcc74bd7d0033e29e08349f8b0befb94c23869d72d"},"behavior":{"status":"new","evidence":"markgit_calls"}},"risk":{"level":"medium","capabilities":{"declared":true,"readOnly":true,"destructive":false,"idempotent":true,"openWorld":true,"readsPrivateData":false,"seesUntrustedContent":false,"writesExternalData":false,"sendsMessages":false,"spendsMoney":false,"executesCode":false,"requiresUserCredential":false,"allowedOutboundDomains":["nagerholidays.com"],"dataRetention":"unknown"}},"policy":{"callable":true,"monetizationEligible":true,"eligibleForAutoCall":false,"riskLevel":"medium","approval":{"requirement":"explicit_unverified","manifestDigest":"5bd2c349ed15036a64d536dcc74bd7d0033e29e08349f8b0befb94c23869d72d"},"reasons":["endpoint origin is not verified"]},"usage":{"count":0,"uniqueUsers":0,"tracked":true,"coverage":"markgit_calls","invocationsLabel":"Under 1K invokes","usersLabel":"Under 100 users"},"pricing":{"type":"free","currency":"USD","amount":"0.0000"},"inputSchema":{"type":"object","required":["countryCode","year"],"properties":{"year":{"type":"integer","example":2026,"maximum":2200,"minimum":1900,"description":"Four-digit calendar year."},"countryCode":{"type":"string","example":"US","pattern":"^[A-Z]{2}$","description":"ISO 3166-1 alpha-2 country code."}}},"outputSchema":{"type":"array","items":{"type":"object","required":["date","name","countryCode","nationalHoliday","holidayTypes"],"properties":{"date":{"type":"string","format":"date"},"name":{"type":"string"},"countryCode":{"type":"string"},"holidayTypes":{"type":"array","items":{"type":"string"}},"nationalHoliday":{"type":"boolean"},"subdivisionCodes":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]}}}},"access":{"mode":"gateway","endpoint":{"method":"POST","path":"/v1/tools/nager-public-holidays/call"}},"documentation":{"json":"/v1/registry/tools/nager-public-holidays/docs","openapi":"/v1/registry/tools/nager-public-holidays/openapi.json","llms":"/v1/registry/tools/nager-public-holidays/llms.txt","human":"/tools/nager-public-holidays"},"updatedAt":"2026-08-01T15:51:37.089Z"},{"kind":"tool","id":"0f7fd0be-8705-402c-9018-3087f757437f","slug":"frankfurter-exchange-rates","name":"Live Exchange Rates","logoUrl":null,"description":"Get current or historical exchange rates from the open-source Frankfurter API, which aggregates official central-bank data. Upstream docs: https://frankfurter.dev/","category":"Finance","tags":["finance","currency","exchange-rates","free","frankfurter"],"provider":{"id":"200c75ab-f76c-4457-b8f0-d2694de41c12","name":"Open-Meteo","trustTier":"unverified"},"version":{"number":1,"manifestDigest":"4fbb5938534fb454a38ad46d969fb10cfbdf7203368dfdc1d1a9eb60c726c252","immutable":true},"trust":{"provider":{"tier":"unverified","paymentVerified":false},"endpoint":{"status":"unverified","origin":"https://api.frankfurter.dev","verifiedAt":null},"version":{"status":"versioned","manifestDigest":"4fbb5938534fb454a38ad46d969fb10cfbdf7203368dfdc1d1a9eb60c726c252"},"behavior":{"status":"new","evidence":"markgit_calls"}},"risk":{"level":"medium","capabilities":{"declared":true,"readOnly":false,"destructive":false,"idempotent":false,"openWorld":true,"readsPrivateData":false,"seesUntrustedContent":true,"writesExternalData":false,"sendsMessages":false,"spendsMoney":false,"executesCode":false,"requiresUserCredential":false,"allowedOutboundDomains":["api.frankfurter.dev"],"dataRetention":"unknown"}},"policy":{"callable":true,"monetizationEligible":true,"eligibleForAutoCall":false,"riskLevel":"medium","approval":{"requirement":"explicit_unverified","manifestDigest":"4fbb5938534fb454a38ad46d969fb10cfbdf7203368dfdc1d1a9eb60c726c252"},"reasons":["endpoint origin is not verified"]},"usage":{"count":1,"uniqueUsers":1,"tracked":true,"coverage":"markgit_calls","invocationsLabel":"Under 1K invokes","usersLabel":"Under 100 users"},"pricing":{"type":"free","currency":"USD","amount":"0.0000"},"inputSchema":{"type":"object","required":["base","quotes"],"properties":{"base":{"type":"string","example":"USD","description":"ISO 4217 base currency code."},"date":{"type":"string","format":"date","example":"2026-01-02","description":"Optional historical date in YYYY-MM-DD format."},"quotes":{"type":"string","example":"EUR,GBP","description":"Comma-separated ISO 4217 target currency codes."}}},"outputSchema":{"type":"array","items":{"type":"object","required":["date","base","quote","rate"],"properties":{"base":{"type":"string"},"date":{"type":"string","format":"date"},"rate":{"type":"number"},"quote":{"type":"string"}}}},"access":{"mode":"gateway","endpoint":{"method":"POST","path":"/v1/tools/frankfurter-exchange-rates/call"}},"documentation":{"json":"/v1/registry/tools/frankfurter-exchange-rates/docs","openapi":"/v1/registry/tools/frankfurter-exchange-rates/openapi.json","llms":"/v1/registry/tools/frankfurter-exchange-rates/llms.txt","human":"/tools/frankfurter-exchange-rates"},"updatedAt":"2026-08-01T15:51:29.080Z"},{"kind":"tool","id":"97f4efe7-b20a-46e0-9fd1-d377c0de2386","slug":"open-meteo-current-weather","name":"Current Weather","logoUrl":null,"description":"Get current weather conditions for any location on Earth via Open-Meteo.","category":"weather","tags":["weather","forecast","free","open-meteo"],"provider":{"id":"200c75ab-f76c-4457-b8f0-d2694de41c12","name":"Open-Meteo","trustTier":"unverified"},"version":{"number":1,"manifestDigest":null,"immutable":false},"trust":{"provider":{"tier":"unverified","paymentVerified":false},"endpoint":{"status":"unverified","origin":"https://api.open-meteo.com","verifiedAt":null},"version":{"status":"legacy_unversioned","manifestDigest":null},"behavior":{"status":"new","evidence":"markgit_calls"}},"risk":{"level":"unknown","capabilities":{"declared":false,"readOnly":false,"destructive":false,"idempotent":false,"openWorld":true,"readsPrivateData":false,"seesUntrustedContent":true,"writesExternalData":false,"sendsMessages":false,"spendsMoney":false,"executesCode":false,"requiresUserCredential":false,"allowedOutboundDomains":["api.open-meteo.com"],"dataRetention":"unknown"}},"policy":{"callable":false,"monetizationEligible":false,"eligibleForAutoCall":false,"riskLevel":"unknown","approval":{"requirement":"blocked","manifestDigest":null},"reasons":["tool does not yet have an immutable version","endpoint origin is not verified","capabilities have not been declared","paid provider has not completed payment verification","paid endpoint must be verified"]},"usage":{"count":0,"uniqueUsers":0,"tracked":true,"coverage":"markgit_calls","invocationsLabel":"Under 1K invokes","usersLabel":"Under 100 users"},"pricing":{"type":"per_call","currency":"USD","amount":"0.0010"},"inputSchema":{"type":"object","required":["latitude","longitude"],"properties":{"latitude":{"type":"number","description":"Latitude (-90 to 90)"},"longitude":{"type":"number","description":"Longitude (-180 to 180)"}}},"outputSchema":null,"access":{"mode":"gateway","endpoint":{"method":"POST","path":"/v1/tools/open-meteo-current-weather/call"}},"documentation":{"json":"/v1/registry/tools/open-meteo-current-weather/docs","openapi":"/v1/registry/tools/open-meteo-current-weather/openapi.json","llms":"/v1/registry/tools/open-meteo-current-weather/llms.txt","human":"/tools/open-meteo-current-weather"},"updatedAt":"2026-08-01T15:51:16.862Z"}],"total":5}