# Tulimoa

> Find curated AI and MCP tools in the Tulimoa directory; submit yours free with a badge or for $5.

- name: com.tulimoa/platform
- version: 1.4.0
- connection class: R0 (autonomous)
- trust: 97/100
- quality: 77/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.tulimoa%2Fplatform
- tools: https://api.protogrid.dev/v1/servers/com.tulimoa%2Fplatform/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "platform": {
      "type": "http",
      "url": "https://mcp.tulimoa.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 99
- freshness: 100
- provenance: 90
- drivers: +repository +namespace-matches-repo +dns-namespace +reachable +uptime-98% +updated-17d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 77/100 (good)

### protocol: 100 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- pass `protocol.list_ttl`: tool list is cacheable (ttlMs 3600000)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 71 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- fail `tools.annotations`: no tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: search_listings (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_listing (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); list_categories (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
- pass `tools.token_cost`: about 2,745 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 50 (weight 15)

- pass `stability.changes`: 3 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 5, about 2,745 tokens to load them all
- tool set hash: 6c34dbe677c9dbba6c4f134a06cbf236
- tools last changed: 2026-10-04T00:28:20.166Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.tulimoa/platform.svg)](https://protogrid.dev/servers/com.tulimoa/platform)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-04 `edit_listing` changed (inputSchema)
- 2026-10-04 `submit_listing` changed (title, description, inputSchema, outputSchema) **meaning changed**
  - before: Create a new listing in the Tulimoa directory on behalf of the authenticated user. The listing is created with status 'pending' and appears publicly only after admin review. Every listing needs a logo: pass logo_url (a public image URL, e.g. the company's square icon). Requires a write-scoped Tulimoa login. Use list_categories first to pick a valid category id.
  - after: Create a new listing in the Tulimoa directory (AI and MCP software with its own website) on behalf of the authenticated user. It starts as 'pending' and is reviewed by hand. Required: logo_url (a public image URL, e.g. the company's square icon) and ai_usage (how the software uses AI or what agents can do with it). Choose how it goes live with `visibility`: 'badge' (free, Tulimoa badge on the website, reviewed within 7 days) or 'launch' ($5 one-time, no badge, reviewed first, refunded if rejected). For 'launch' ask the user for consent and pass withdrawal_consent: true; the result has a checkout_url the user opens to pay. For 'badge' the result has the badge HTML to embed. A website that is already listed cannot be submitted again. Use list_categories first to pick a valid category id. Requires a write-scoped Tulimoa login.
- 2026-10-04 `get_listing` changed (description)
  - before: Fetch full detail of a single Tulimoa listing by its slug: long description, features, use cases, integrations, pricing detail, and links. Use after search_listings when the user wants depth on a specific tool.
  - after: Fetch full detail of a single Tulimoa listing by its slug: long description, how it uses AI (ai_usage), features, use cases, integrations, pricing detail, data region and EU hosting, model source, certifications, and links. Use after search_listings when the user wants depth on a specific tool.

Full history: https://api.protogrid.dev/v1/servers/com.tulimoa%2Fplatform/changes

## Remotes

- https://mcp.tulimoa.com/mcp (streamable-http, auth none, reachable true, uptime30d 0.9752066)

## Packages

_none_

## Tools (5)

- `edit_listing`: Update fields of a listing you own (by slug). You cannot change ownership or set review status. Any edit sends the listing back to admin review (status: pending) and it reappears publicly only after re-approval. Every listing needs a logo: pass logo_url to replace it (required if the listing has none yet). Requires a write-scoped Tulimoa login.
- `get_listing`: Fetch full detail of a single Tulimoa listing by its slug: long description, how it uses AI (ai_usage), features, use cases, integrations, pricing detail, data region and EU hosting, model source, certifications, and links. Use after search_listings when the user wants depth on a specific tool.
- `list_categories`: List the category ids and labels used to classify Tulimoa listings. Call this first when you need a valid `category` value for search_listings.
- `search_listings`: Find SaaS tools in the Tulimoa directory that an AI agent or team can plug into. Discover tools by topic, category, pricing, MCP support, or EU hosting. Returns only approved, published listings. Use this for any 'find/recommend a tool for X' request, then call get_listing for full detail on a specific result.
- `submit_listing`: Create a new listing in the Tulimoa directory (AI and MCP software with its own website) on behalf of the authenticated user. It starts as 'pending' and is reviewed by hand. Required: logo_url (a public image URL, e.g. the company's square icon) and ai_usage (how the software uses AI or what agents can do with it). Choose how it goes live with `visibility`: 'badge' (free, Tulimoa badge on the website, reviewed within 7 days) or 'launch' ($5 one-time, no badge, reviewed first, refunded if rejected). For 'launch' ask the user for consent and pass withdrawal_consent: true; the result has a checkout_url the user opens to pay. For 'badge' the result has the badge HTML to embed. A website that is already listed cannot be submitted again. Use list_categories first to pick a valid category id. Requires a write-scoped Tulimoa login.
