Odel
TinyFn

TinyFn

@tinyfn-io1PythonMITUpdated 2mo ago

500+ deterministic tools for AI agents: math, conversion, validation, hashing, encoding, date/time.

Server endpointStreamable HTTPNo authProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

TinyFn

TinyFn MCP Server

🧮 Give your AI agent 500+ deterministic tools
Stop hallucinating math. Start getting correct answers.

License Docs Smithery

Quick StartServersExamplesPricingDocsSupport


TinyFn — 500+ Deterministic Tools for AI Agents



🎉 Free Tier Available!
100 requests/month FREE — no credit card required
Get your free API key →

The Problem

LLMs are great at reasoning. They're terrible at math.

Ask any AI assistant to compute 17% of 4,847 and you'll get a confident, wrong answer. Ask it to validate an email with regex, generate a SHA-256 hash, or convert timezones — same story. LLMs hallucinate on deterministic tasks.

TinyFn is a Model Context Protocol (MCP) server that gives your AI assistant 500+ tools that always return the correct answer. Math, conversions, validations, hashing, date arithmetic — the boring stuff, done right.


🧮 500+ Tools
Math, strings, dates,
and much more
🎯 Zero Hallucinations
Deterministic results
every single time
⚡ No Installation
Remote MCP server
zero setup
🔌 Works Everywhere
Claude, Cursor, Windsurf,
any MCP client

🖥️ Works With Your Tools

TinyFn runs as a remote MCP server — no npx, no Docker, no local install. Just add the URL to your config.

PlatformTool LimitRecommended SetupConfig Location
Claude Code500+ (Tool Search)/mcp/all/ — use everything~/.claude/settings.json
Claude Desktop~100 tools2–3 category servers~/Library/Application Support/Claude/claude_desktop_config.json
Cursor~40 tools1–2 focused serversCursor MCP settings
Windsurf~40 tools1–2 focused serversWindsurf MCP settings
Continue.devVariesCategory servers.continue/config.json
Any MCP ClientVariesMatch to your tool limitClient-specific

💡 Why category servers? Most AI clients limit the number of tools. TinyFn splits 500+ tools across 12 focused servers so you can pick exactly what you need.


✅ Example Queries That Just Work

Once connected, just ask your AI assistant in plain language:

Math & Numbers

  • "Is 7919 a prime number?"
  • "What's 17% of 4,847?"
  • "Calculate the factorial of 12"

Conversions

  • "Convert 72°F to Celsius"
  • "How many miles is 100 kilometers?"
  • "Convert #3B82F6 to RGB values"

Validation

  • "Is user@example.com a valid email address?"
  • "Validate this credit card number: 4111111111111111"
  • "Is 550e8400-e29b-41d4-a716-446655440000 a valid UUID?"

Encoding & Hashing

  • "Base64 encode 'Hello, World!'"
  • "Generate a SHA-256 hash of 'my-secret-string'"
  • "URL encode 'hello world & goodbye'"

Date & Time

  • "How many days between January 15 and March 22?"
  • "What's the current Unix timestamp?"
  • "Is 2024 a leap year?"

Generators

  • "Generate a UUID"
  • "Create a secure 20-character password"
  • "Roll 3 six-sided dice"

⚡ Quick Start

1. Get your free API key at tinyfn.io (takes 10 seconds)

2. Add TinyFn to your MCP client:

Claude Code

Claude Code supports Tool Search, so you can use the full server with all 500+ tools:

{
  "mcpServers": {
    "tinyfn": {
      "url": "https://api.tinyfn.io/mcp/all/",
      "headers": {
        "X-API-Key": "tf_live_YOUR_KEY_HERE"
      }
    }
  }
}

Add this to ~/.claude/settings.json or use claude mcp add.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "tinyfn-math": {
      "url": "https://api.tinyfn.io/mcp/math/",
      "headers": {
        "X-API-Key": "tf_live_YOUR_KEY_HERE"
      }
    },
    "tinyfn-validate": {
      "url": "https://api.tinyfn.io/mcp/validate/",
      "headers": {
        "X-API-Key": "tf_live_YOUR_KEY_HERE"
      }
    }
  }
}

Tip: Claude Desktop supports ~100 tools. Add 2–3 category servers based on your workflow.

Cursor & Windsurf

These platforms have a ~40 tool limit. Pick 1–2 focused servers:

{
  "mcpServers": {
    "tinyfn-validate": {
      "url": "https://api.tinyfn.io/mcp/validate/",
      "headers": {
        "X-API-Key": "tf_live_YOUR_KEY_HERE"
      }
    }
  }
}

Recommended for Cursor/Windsurf: validate (15 tools), hash (18 tools), encode (20 tools), convert (42 tools).

Continue.dev

{
  "experimental": {
    "mcpServers": [
      {
        "name": "tinyfn-math",
        "url": "https://api.tinyfn.io/mcp/math/",
        "headers": {
          "X-API-Key": "tf_live_YOUR_KEY_HERE"
        }
      }
    ]
  }
}

3. Start asking questions. Your AI now has deterministic tools for math, conversions, validation, and more.


📡 Available MCP Servers

All servers use base URL https://api.tinyfn.io. Pick the categories you need:

ServerEndpointToolsWhat It Does
All/mcp/all/500+Everything — best for Claude Code
Math/mcp/math/52Arithmetic, trig, primes, factorials, comparisons
Convert/mcp/convert/42Temperature, length, weight, volume, speed, data sizes
String/mcp/string/33Case conversion, slugify, trim, word count, extraction
Datetime/mcp/datetime/24Date parsing, formatting, diffs, timezones, leap years
Encode/mcp/encode/20Base64, URL, HTML, hex, ROT13, morse, JWT decode
Hash/mcp/hash/18MD5, SHA-256, SHA-512, HMAC, bcrypt, CRC32
Color/mcp/color/30HEX/RGB/HSL conversion, gradients, contrast, palettes
Stats/mcp/stats/16Mean, median, mode, std dev, percentiles, correlation
Validate/mcp/validate/15Email, URL, phone, credit card, UUID, IP, JSON, dates
Finance/mcp/finance/15Interest, loans, mortgage, ROI, margin, tip calculator
Generate/mcp/generate/15UUIDs, passwords, random numbers, lorem ipsum, dice

⚠️ Important: All URLs must end with a trailing / or requests will return 404 errors.


🛠️ Tool Categories

🔢 Math & Numbers — 52 tools
ToolDescriptionExample
add, subtract, multiply, divideBasic arithmeticadd(17, 25)42
percentagePercentage calculationpercentage(17, 4847)823.99
is_primePrimality testingis_prime(7919)true
factorialFactorial calculationfactorial(12)479001600
fibonacciNth Fibonacci numberfibonacci(10)55
gcd, lcmGCD and LCMgcd(48, 18)6
power, square_rootExponentiationsquare_root(144)12
sin, cos, tanTrigonometric functionssin(1.5708)1.0
log, log10, log2Logarithmslog10(1000)3
floor, ceil, round_numberRoundingceil(4.2)5
absolute_value, signNumber propertiessign(-42)-1
clamp, distance, hypotenuseRange & geometryhypotenuse(3, 4)5
📝 String Operations — 33 tools
ToolDescriptionExample
reverse_stringReverse textreverse_string("hello")"olleh"
uppercase, lowercaseCase conversionuppercase("hello")"HELLO"
camel_case, snake_case, kebab_caseNaming conventionssnake_case("helloWorld")"hello_world"
slugURL-safe slugsslug("Hello World!")"hello-world"
trim, padWhitespace handlingtrim(" hi ")"hi"
word_count, string_lengthText metricsword_count("hello world")2
contains, starts_with, ends_withString matchingcontains("hello", "ell")true
split, joinArray operationssplit("a,b,c", ",")["a","b","c"]
extract_emails, extract_urlsContent extractionExtract emails from text blocks
is_palindromePalindrome checkis_palindrome("racecar")true
count_char, count_substringCharacter countingcount_char("hello", "l")2
✅ Validation — 15 tools
ToolDescriptionExample
validate_emailEmail format validationvalidate_email("user@example.com")true
validate_urlURL format validationvalidate_url("https://tinyfn.io")true
validate_phonePhone number validationvalidate_phone("+1-555-123-4567")true
validate_credit_cardLuhn algorithm checkvalidate_credit_card("4111111111111111")true
validate_uuidUUID format validationvalidate_uuid("550e8400-e29b-41d4-a716-446655440000")true
validate_ipIPv4/IPv6 validationvalidate_ip("192.168.1.1")true
validate_jsonJSON syntax validationvalidate_json('{"key": "value"}')true
validate_dateDate format validationvalidate_date("2024-02-29")true
validate_hexHex string validationvalidate_hex("1a2b3c")true
validate_base64Base64 validationvalidate_base64("SGVsbG8=")true
🔄 Conversions — 42 tools
ToolDescriptionExample
celsius_to_fahrenheitTemperaturecelsius_to_fahrenheit(100)212
kilometers_to_milesDistancekilometers_to_miles(100)62.14
kilograms_to_poundsWeightkilograms_to_pounds(70)154.32
liters_to_gallons_usVolumeliters_to_gallons_us(3.785)1.0
hex_to_rgbColorhex_to_rgb("#3B82F6"){r:59, g:130, b:246}
decimal_to_binaryBase conversiondecimal_to_binary(42)"101010"
bytes_to_humanFile sizesbytes_to_human(1073741824)"1 GB"
mph_to_kphSpeedmph_to_kph(60)96.56
inches_to_centimetersLengthinches_to_centimeters(12)30.48
hours_to_minutesTimehours_to_minutes(2.5)150
🔐 Hashing — 18 tools
ToolDescriptionExample
hash_md5MD5 hashhash_md5("hello")"5d41402abc4b..."
hash_sha256SHA-256 hashhash_sha256("hello")"2cf24dba5fb0..."
hash_sha512SHA-512 hashFull 128-char hex digest
hmac_sha256HMAC signatureKeyed hash authentication
hash_sha3_256, hash_sha3_512SHA-3 familyModern hash algorithms
hash_blake2b, hash_blake2sBLAKE2High-performance hashing
hash_crc32CRC32 checksumError detection codes
compare_hashesTiming-safe compareConstant-time hash comparison
identify_hashHash identificationDetect hash algorithm from string
🔑 Encoding — 20 tools
ToolDescriptionExample
base64_encode, base64_decodeBase64base64_encode("Hello")"SGVsbG8="
url_encode, url_decodeURL encodingurl_encode("hello world")"hello%20world"
html_encode, html_decodeHTML entitieshtml_encode("<div>")"&lt;div&gt;"
hex_encode, hex_decodeHex encodinghex_encode("hi")"6869"
jwt_decodeJWT parsingDecode JWT payload (no verification)
rot13ROT13 cipherrot13("hello")"uryyb"
morse_encode, morse_decodeMorse codemorse_encode("SOS")"... --- ..."
json_minify, json_prettifyJSON formattingMinify or pretty-print JSON
📅 Date & Time — 24 tools
ToolDescriptionExample
get_nowCurrent timestampISO 8601 timestamp
format_date, parse_dateDate formattingParse and format dates
date_diffDays between datesdate_diff("2024-01-15", "2024-03-22")67 days
add_time, subtract_timeDate arithmeticAdd/subtract days, hours, minutes
convert_timezoneTimezone conversionConvert between any IANA timezones
is_leap_yearLeap year checkis_leap_year(2024)true
calculate_ageAge from birthdateCalculate exact age
relative_timeRelative formatting"2 hours ago", "in 3 days"
days_in_monthMonth lengthdays_in_month(2, 2024)29
is_weekendWeekend checkCheck if a date falls on Sat/Sun
🎲 Generators — 15 tools
ToolDescriptionExample
generate_uuidUUID v4"550e8400-e29b-41d4-a716-446655440000"
generate_uuid_v7UUID v7 (time-sortable)Timestamp-based UUIDs
generate_passwordSecure passwordsConfigurable length and character sets
random_numberRandom integersrandom_number(1, 100)42
random_stringRandom stringsConfigurable length and charset
generate_tokenAPI tokensCryptographically secure tokens
generate_loremLorem ipsumGenerate placeholder text
generate_colorRandom colorsRandom hex color codes
roll_diceDice rollingroll_dice(3, 6)[4, 2, 6]
flip_coinCoin flip"heads" or "tails"
shuffle_listShuffle arraysRandomize array order
🎨 Colors — 30 tools
ToolDescriptionExample
hex_to_hsl, hsl_to_hexColor space conversionConvert between formats
hex_to_rgb, rgb_to_hexRGB conversionhex_to_rgb("#FF5733"){r:255,g:87,b:51}
lighten_color, darken_colorBrightness adjustmentLighten/darken by percentage
complement_colorComplementary colorsGet the opposite color
triadic_colors, analogous_colorsColor harmoniesGenerate color schemes
contrast_ratioWCAG contrastCheck accessibility compliance
generate_gradientGradient generationGenerate color stops between two colors
generate_shades, generate_tintsShade/tint rampsCreate monochromatic palettes
invert_colorColor inversionInvert any hex color
blend_colorsColor blendingMix two colors together
📊 Statistics — 16 tools
ToolDescriptionExample
calculate_meanArithmetic meancalculate_mean([10, 20, 30])20
calculate_medianMedian valuecalculate_median([1, 3, 5, 7])4
calculate_modeMost frequent valuecalculate_mode([1, 2, 2, 3])2
calculate_variancePopulation varianceStatistical variance
calculate_stddevStandard deviationStatistical spread
calculate_percentilePercentile calculationcalculate_percentile([1..100], 95)95
calculate_quartilesQ1, Q2, Q3Quartile boundaries
calculate_correlationPearson correlationCorrelation coefficient between datasets
calculate_zscoreZ-scoreStandard score calculation
describe_dataSummary statisticsFull statistical description of a dataset
💰 Finance — 15 tools
ToolDescriptionExample
compound_interestCompound interestCalculate future value with compounding
simple_interestSimple interestBasic interest calculation
loan_paymentLoan paymentsMonthly payment calculator
mortgage_calculatorMortgageMonthly mortgage with amortization
calculate_tipTip calculatorcalculate_tip(85.50, 20)$17.10
percentage_changeGrowth/declinepercentage_change(100, 125)25%
calculate_markup, calculate_marginPricingMarkup and margin calculations
calculate_discountDiscountsPrice after discount
return_on_investmentROIInvestment return percentage
rule_of_72Doubling timeYears to double an investment
break_evenBreak-even analysisUnits needed to break even
🏃 Health & Fitness — 10 tools
ToolDescriptionExample
calculate_bmiBody Mass Indexcalculate_bmi(70, 1.75)22.86
calculate_bmrBasal Metabolic RateDaily calorie baseline
ideal_weightIdeal weight rangeBased on height and frame
heart_rate_zonesTraining zonesFat burn, cardio, peak zones
estimate_body_fatBody fat estimateNavy method estimation
daily_water_intakeWater recommendationBased on weight and activity
calories_burnedExercise caloriesCalories for activity type and duration
calculate_macrosMacro splitProtein/carb/fat breakdown
sleep_cyclesSleep optimizationOptimal wake times based on cycles
🎭 Fun — 10 tools
ToolDescriptionExample
magic_8_ballMagic 8-BallRandom mystical answers
dad_jokeDad jokesGuaranteed groan
fortune_cookieFortune cookiesRandom fortune messages
random_complimentComplimentsBrighten someone's day
random_excuseExcusesCreative excuse generator
would_you_ratherWould You RatherRandom dilemmas
friendly_roastFriendly roastsLight-hearted roasts
random_triviaTriviaRandom trivia facts
yes_noYes/No oracleRandom yes or no

🎯 Perfect For

  • AI-Assisted Development — Cursor and Windsurf users who need reliable math in their coding workflow
  • Data Analysis — Statistics, percentiles, and financial calculations without second-guessing
  • Content Creation — Word counts, slugification, and encoding when building with AI
  • DevOps & Security — Hash generation, UUID creation, and input validation
  • Education — Teach with tools that demonstrate correct mathematical results
  • API Development — Validate inputs, generate test data, and compute values during development

💰 Pricing

FreeStarterProEnterprise

$0/mo

100 requests


✅ All 500+ tools
✅ MCP & REST API
✅ 10 req/min rate limit
✅ Community support

$9/mo

10,000 requests


✅ Everything in Free
✅ 100 req/min rate limit
✅ Email support
✅ Usage analytics

$30/mo

100,000 requests


✅ Everything in Starter
✅ 1,000 req/min rate limit
✅ Priority support
✅ Advanced analytics

Custom

Unlimited


✅ Everything in Pro
✅ SLA guarantee
✅ Dedicated support
✅ Custom integrations

All plans include access to every tool. Sign up free →


🔧 Troubleshooting

❌ Getting 404 errors

All MCP server URLs must end with a trailing slash /.

✅ https://api.tinyfn.io/mcp/math/
❌ https://api.tinyfn.io/mcp/math
❌ Authentication errors (401/403)
  1. Verify your API key starts with tf_live_
  2. Check that you're using the X-API-Key header (not Authorization)
  3. Make sure your key is active at tinyfn.io/dashboard
{
  "headers": {
    "X-API-Key": "tf_live_YOUR_KEY_HERE"
  }
}
❌ Too many tools / client not loading

Your MCP client has a tool limit. Instead of /mcp/all/, use category-specific servers:

If you need...Use serverTools
Validation only/mcp/validate/15
Hashing only/mcp/hash/18
Encoding only/mcp/encode/20
Math only/mcp/math/52

See the full server list for all options.

❌ Rate limit exceeded (429)

You've hit your plan's rate limit. Options:


📚 Documentation & Resources



🤝 Support


📄 License

MIT License — see LICENSE for details.


The boring stuff, done right.

WebsiteDocsGitHubTwitter