Agent Bits

io.github.rwaldmanPublished by GitHub account rwaldmanv0.3.0Updated Oct 24, 2026

Machine-readable utilities and datasets for AI agents.

VerifiedStreamable HTTPWeb executableDeveloper ToolsData & Analytics

Overview

AI-generated overview

A hosted MCP endpoint offering small deterministic utilities: encoders, validators, unit and time conversions, and ISO country, currency, language, MIME, TLD, T

What you can do
Encode and decode Base64 and URL components, and validate JSON text, UUIDs, ISBN-10/13 and Luhn check digits before use or storage. Convert units of length, mass and temperature, and convert Unix or ISO-8601 timestamps and datetimes between IANA timezones. Look up reference metadata for ISO country codes, ISO currency codes, ISO language codes, MIME types, HTTP status codes and DNS top-level domains. Download the complete versioned countries dataset as JSON for caching or offline analysis.
When to use it
Useful when an assistant needs quick, deterministic lookups and conversions rather than reasoning them out: checking an identifier checksum, explaining an HTTP status, converting a timestamp across timezones, or resolving country, currency or MIME metadata.
Requirements
A remote MCP endpoint; no local package, account, API key or signup is needed for the free capabilities. The bulk countries dataset is a paid capability settled with x402 in USDC on Base, and unpaid requests return HTTP 402 with payment instructions.
Before you install
The bulk countries dataset costs money, paid programmatically in USDC on Base, so an assistant could spend funds if it is allowed to complete payment flows. Encoding and validation tools receive whatever text is passed to them, including credentials or tokens, and that content is sent to the hosted service. Validation tools only check format and checksums, not authenticity.

Installation

In SourceWeft

  1. Open Agent Bits in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.rwaldman%2Fagentbits/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "agent-bits": {
      "type": "http",
      "url": "https://agentbits.dev/mcp"
    }
  }
}

README

Agent Bits

Machine-readable utilities and datasets for AI agents.

Website: https://agentbits.dev
MCP: https://agentbits.dev/mcp
Catalog: https://agentbits.dev/catalog.json
OpenAPI: https://agentbits.dev/openapi.json
Official MCP Registry manifest: server.json

Canonical links

What this repository is

This repository contains public documentation and discovery metadata for Agent Bits.

It exists for:

  • discoverability
  • documentation
  • machine-readable capability descriptions
  • public specifications
  • public API/MCP documentation
  • examples of consuming the hosted service
  • public project metadata
  • links to the hosted service

It does not contain the Agent Bits implementation.

Capability table

CapabilityDescriptionPricingInterfaces
country_lookupLook up country metadata by ISO 3166-1 alpha-2 codeFreeHTTP · MCP
currency_lookupLook up currency metadata by ISO 4217 codeFreeHTTP · MCP
timezone_convertConvert timestamps between IANA timezonesFreeHTTP · MCP
timestamp_convertConvert unix/ISO timestampsFreeHTTP · MCP
unit_convertConvert common unitsFreeHTTP · MCP
isbn_validateValidate ISBN-10/ISBN-13FreeHTTP · MCP
uuid_validateValidate UUID stringsFreeHTTP · MCP
luhn_validateValidate numbers with the Luhn algorithmFreeHTTP · MCP
json_validateValidate JSON textFreeHTTP · MCP
base64_encode / base64_decodeEncode/decode Base64FreeHTTP · MCP
url_encode / url_decodeEncode/decode URL componentsFreeHTTP · MCP
mime_lookupLook up MIME type metadataFreeHTTP · MCP
language_lookupLook up language metadataFreeHTTP · MCP
http_status_lookupLook up HTTP status code metadataFreeHTTP · MCP
tld_lookupLook up TLD metadataFreeHTTP · MCP
countries_bulkRetrieve the complete countries datasetPaid (x402 USDC on Base)HTTP · MCP · x402

See catalog.json for schemas, use_when / do_not_use_when, and payment metadata.

Connect MCP in under a minute

json
{  "mcpServers": {    "agentbits": {      "url": "https://agentbits.dev/mcp"    }  }}

Works with Claude Code, Cursor, OpenCode, Cloudflare Agents, and generic MCP clients.

Details: docs/mcp.md · for-agents.md · docs/mcp-registries.md

MCP registries

Packaging for Smithery, Glama, the official MCP Registry, PulseMCP, MCP.so, and related directories is documented in docs/mcp-registries.md.

Suggested GitHub topics: ai-agents, mcp, mcp-server, agent-tools, ai-tools, x402, agentic-ai, cloudflare-workers, machine-payments

How agents discover Agent Bits

  1. Read for-agents.md or https://agentbits.dev/for-agents
  2. Fetch catalog.json
  3. Select a capability using description + use_when / do_not_use_when
  4. Open the capability page under tools/
  5. Invoke MCP or HTTP

Payments

Paid capabilities use x402 on Base with USDC.

No account. No API key. No signup. Agents can pay programmatically.

Unpaid paid requests return HTTP 402 with machine-readable payment instructions.

See docs/payments.md.

Status

Initial MVP capabilities are published in the catalog.

Glama listing

[rwaldman/agentbits MCP server]

Score badge may show “Not found” until a Glama release exists (see docs/mcp-registries.md).

License

MIT — see LICENSE.

This repository contains documentation and discovery metadata for the hosted Agent Bits service.

Source: README.md at commit 8d2100d

Tools

18

base64_decode

Decode a Base64 string into UTF-8 text and report invalid payloads as errors when recovering embedded credentials, tokens, or transport-encoded content. Use when: - Decode this Base64 string to UTF-8 text - Recover plain text from a Base64-encoded payload - Check whether a Base64 string is valid and decode it Do not use when: - Encode plain text to Base64 (use base64_encode) - Decode percent-encoded URL components (use url_decode) - Decrypt ciphertext—Base64 decoding is not decryption

Parametersvaluerequired

base64_encode

Convert a UTF-8 string into standard Base64 when you need a portable text encoding for credentials, binary-safe transport, or embedding data in JSON/HTTP fields. Use when: - Encode this UTF-8 string as Base64 - Convert plain text into standard Base64 for transport - Produce a Base64 representation of a credential or payload string Do not use when: - Decode Base64 back to text (use base64_decode) - Percent-encode URL components (use url_encode) - Hash or encrypt data for security—Base64 is encoding only

Parametersvaluerequired

countries_bulk

Download the complete versioned countries dataset as JSON for caching, offline use, or multi-country analysis when a single country_lookup call is not enough. Use when: - Download the full countries dataset as JSON - Cache the complete versioned countries snapshot for offline use - Analyze or filter many countries without repeated single-code lookups Do not use when: - Look up metadata for a single country by ISO code (use country_lookup instead) - Look up one currency or language code (use currency_lookup / language_lookup) - Fetch live geopolitical or exchange-rate feeds Payment: 0.001 USDC via x402 on eip155:8453. No account. No API key. No signup.

Parametersversion

country_lookup

Resolve an ISO 3166-1 alpha-2 country code (for example CA, US, JP) to official name, region, currency, calling code, languages, and related country metadata when you already have the two-letter code. Use when: - What currency and calling code does country code JP use? - Get official name, region, and languages for ISO country CA - Look up standardized metadata for a two-letter ISO 3166-1 country code Do not use when: - Download the full countries dataset for offline or multi-country use (use countries_bulk) - Look up currency symbol or decimals by ISO 4217 code alone (use currency_lookup) - Search for a country when you only know its English name and not the ISO code

Parameterscoderequired

currency_lookup

Resolve an ISO 4217 currency code such as USD, EUR, or JPY to its name, symbol, decimal places, and which countries use it when you need currency metadata rather than a live exchange rate. Use when: - What is the symbol and number of decimal places for EUR? - Which countries use currency code JPY? - Get ISO 4217 name and metadata for USD Do not use when: - Convert amounts between currencies or fetch live FX rates - Find which currency a country uses when you only have a country code (use country_lookup) - Validate payment-card-like numbers (use luhn_validate)

Parameterscoderequired

http_status_lookup

Explain what a numeric HTTP status code such as 404 or 429 means by returning its standard reason phrase and a short description for debugging or API responses. Use when: - What does HTTP status 404 mean? - Get the standard name and description for status code 429 - Explain an HTTP response code returned by an API Do not use when: - Decide whether a request succeeded without needing the status name - Look up MIME types or content-type headers (use mime_lookup) - Diagnose TLS, DNS, or network failures that are not HTTP status codes

Parameterscoderequired

isbn_validate

Verify whether an ISBN-10 or ISBN-13 passes checksum rules and return normalized digits when checking book identifiers before catalog or purchase flows. Use when: - Is this ISBN valid? - Check the checksum for an ISBN-13 book identifier - Normalize and validate an ISBN-10 or ISBN-13 string Do not use when: - Look up book title, author, or cover metadata from an ISBN - Validate UUIDs (use uuid_validate) or payment-card Luhn numbers (use luhn_validate) - Validate arbitrary barcode formats that are not ISBN-10/13

Parametersvaluerequired

json_validate

Parse a string as JSON to confirm it is well-formed and return a normalized representation when possible before further processing or storage. Use when: - Is this string valid JSON? - Parse and normalize a JSON payload before processing - Check whether agent or user-supplied text is well-formed JSON Do not use when: - Validate against a specific JSON Schema or OpenAPI model beyond well-formedness - Encode or decode Base64 (use base64_encode / base64_decode) - Validate UUID or ISBN identifier formats

Parametersvaluerequired

language_lookup

Resolve an ISO 639-1 language code such as en, fr, or ja to its English name and native name when you need language metadata from a two-letter code. Use when: - What language does ISO 639-1 code ja refer to? - Get the native name for language code fr - Resolve a two-letter language code to its English and native names Do not use when: - Translate text between languages - Detect the language of arbitrary free-form text - Look up country languages from a country code (use country_lookup)

Parameterscoderequired

luhn_validate

Run the Luhn checksum on a numeric string such as a payment-card-like identifier to verify the check digit before accepting or storing the value. Use when: - Does this number pass a Luhn check? - Validate a payment-card-like identifier checksum - Verify a numeric ID that uses a Luhn check digit Do not use when: - Charge a card, tokenize payments, or call a payment processor - Validate ISBNs (use isbn_validate) or UUIDs (use uuid_validate) - Look up currency metadata (use currency_lookup)

Parametersvaluerequired

mime_lookup

Map a file extension such as webp or png, or a MIME type string, to curated Content-Type metadata when setting headers, validating uploads, or choosing a media type. Use when: - What MIME type should I use for a .webp file? - Look up metadata for Content-Type application/json - Resolve a file extension to the correct MIME type for an upload or response header Do not use when: - Sniff or detect MIME type from raw file bytes - Encode or decode Base64 file payloads (use base64_encode / base64_decode) - Look up DNS top-level domain metadata (use tld_lookup)

Parametersqueryrequired

timestamp_convert

Convert Unix epoch seconds or milliseconds to ISO-8601, or an ISO-8601 datetime to Unix epoch values, when bridging APIs that disagree on time formats. Use when: - Convert this Unix timestamp to ISO-8601 - Turn an ISO-8601 datetime into epoch milliseconds - Bridge APIs that mix Unix seconds and ISO-8601 strings Do not use when: - Convert a datetime between IANA timezones while preserving the instant (use timezone_convert) - Convert length, mass, or temperature units (use unit_convert) - Interpret relative phrases like 'next Tuesday' or 'in 3 hours'

Parametersvaluerequiredinput_formatrequired

timezone_convert

Convert an ISO-8601 datetime from one IANA timezone to another while preserving the same instant, including daylight-saving-aware wall times such as Toronto to Tokyo. Use when: - What time is 3pm Toronto in Tokyo? - Convert an ISO-8601 datetime from America/New_York to Europe/London - Show the same instant in another IANA timezone with DST-aware offsets Do not use when: - Only convert between Unix epoch and ISO-8601 without changing timezone (use timestamp_convert) - Convert length, mass, or temperature units (use unit_convert) - Guess a city timezone from a postal address without an IANA zone id

Parametersdatetimerequiredto_timezonerequiredfrom_timezonerequired

tld_lookup

Identify what a DNS top-level domain such as com, io, or ai is classified as and commonly used for when classifying domains or answering TLD questions. Use when: - What kind of TLD is .io? - Is .ai a country-code or generic top-level domain? - Get curated metadata for DNS TLD com Do not use when: - Check whether a full domain name is registered or available - Resolve DNS records or WHOIS ownership - Look up MIME types for file extensions (use mime_lookup)

Parameterstldrequired

unit_convert

Convert a numeric value between supported length, mass, or temperature units—for example miles to kilometers or Celsius to Fahrenheit—when you need a deterministic unit conversion. Use when: - Convert 10 miles to kilometers - What is 25°C in Fahrenheit? - Convert a mass value between kilograms and pounds Do not use when: - Convert currencies or fetch exchange rates (use currency_lookup for metadata only) - Convert timestamps or timezones (use timestamp_convert / timezone_convert) - Convert unsupported unit categories outside length, mass, and temperature

Parametersvaluerequiredto_unitrequiredfrom_unitrequired

url_decode

Decode a percent-encoded URL component into plain text when reading query parameters, path segments, or form values that contain escaped characters. Use when: - Decode this percent-encoded URL component - Convert %20-style escapes back to plain text - Recover the original string from an encoded query parameter Do not use when: - Percent-encode text for a URL (use url_encode) - Decode Base64 payloads (use base64_decode) - Parse HTML entities that are not URL percent-encoding

Parametersvaluerequired

url_encode

Apply encodeURIComponent-style percent-encoding so query parameters, path segments, or form values are safe to place in a URL. Use when: - Percent-encode this string for a query parameter - Make a path segment URL-safe with encodeURIComponent-style encoding - Encode special characters before inserting text into a URL Do not use when: - Decode a percent-encoded string (use url_decode) - Encode binary data as Base64 (use base64_encode) - Build or rewrite a full absolute URL structure beyond component encoding

Parametersvaluerequired

uuid_validate

Check whether a string is a well-formed UUID and, when recognizable, report its version and variant so you can accept or reject identifier inputs confidently. Use when: - Is this string a valid UUID? - What version and variant is this UUID? - Validate a UUID before using it as a primary key or request id Do not use when: - Generate a new UUID - Validate ISBNs or other non-UUID identifiers (use isbn_validate) - Validate JSON structure (use json_validate)

Parametersvaluerequired

Version history

1
  1. v0.3.0LatestSep 16, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts