Skip to main content
Glama
hifriendbot

ailist-mcp

by hifriendbot

AiList MCP Server

"List my project on AiList" — one sentence to your AI agent and your project is discoverable by thousands of AI coding assistants.

AiList MCP connects Claude Code to a curated directory of Ai projects. Search MCP servers, CLI tools, libraries, and APIs — or submit your own project without leaving your terminal.

Quick Setup

Option 1: npx (no install needed)

Add to your .mcp.json:

{
  "mcpServers": {
    "ailist": {
      "command": "npx",
      "args": ["-y", "ailist-mcp"]
    }
  }
}

Option 2: Claude Code CLI

claude mcp add ailist -- npx -y ailist-mcp

Option 3: With API key (for submitting projects)

{
  "mcpServers": {
    "ailist": {
      "command": "npx",
      "args": ["-y", "ailist-mcp"],
      "env": {
        "AILIST_API_KEY": "your-api-key-here"
      }
    }
  }
}

Get your free API key at hifriendbot.com/ai-list/submit/

Related MCP server: SkillHub MCP

What Can Your Agent Do?

List your project — Tell your agent "list my project on AiList" and it reads your repo, fills in the details, and submits. Your project goes live in minutes after auto-review.

Discover tools — Your agent searches the directory to find the right MCP server, library, or CLI tool for the job. No more browsing — just ask.

See what's trending — Find out what Ai projects are gaining traction this week, sorted by star velocity.

Environment Variables

Variable

Required

Description

AILIST_API_KEY

No

API key for submitting projects. Get one free at hifriendbot.com/ai-list/submit/

AILIST_API_URL

No

Override API base URL (defaults to hifriendbot.com)

No API key is needed for searching and browsing. All read operations are free and unauthenticated.

Available Tools

search_projects

Search and browse Ai projects. Supports filtering by category and sorting.

search_projects(query: "mcp server", category: "mcp-server", sort: "stars")

Parameters:

  • query (string, optional) — Search query

  • category (string, optional) — Filter: mcp-server, cli-tool, library, web-app, api, plugin, model, dataset, agent, other

  • built_with (string, optional) — Filter by technology (e.g. "Claude Code", "Cursor")

  • sort (string, default "stars") — Sort by: stars, trending, newest, name, views

  • page (int, default 1) — Page number

  • per_page (int, default 24, max 100) — Results per page

get_project

Get full details for a specific project by slug.

get_project(slug: "cogmemai-mcp")

Parameters:

  • slug (string, required) — The project's URL slug

list_categories

List all project categories with counts.

list_categories()

No parameters.

Discover trending Ai projects this week, sorted by star velocity.

get_trending(limit: 10)

Parameters:

  • limit (int, default 20, max 50) — Number of results

get_stats

Get directory-wide statistics.

get_stats()

No parameters. Returns total projects, added this week, category breakdowns.

submit_project

Submit your project to the directory. Requires AILIST_API_KEY.

submit_project(
  name: "My Tool",
  tagline: "Does something cool",
  url: "https://example.com",
  category: "cli-tool"
)

Parameters:

  • name (string, required) — Project name

  • tagline (string, optional) — Short description

  • description (string, optional) — Full description (markdown)

  • url (string, optional) — Homepage URL

  • github_url (string, optional) — GitHub repo URL

  • npm_package (string, optional) — npm package name

  • pypi_package (string, optional) — PyPI package name

  • category (string, optional) — Project category

  • tags (string, optional) — Comma-separated tags

  • built_with (string, optional) — Technologies used

  • creator_name (string, optional) — Creator name

  • creator_url (string, optional) — Creator URL

Examples

List your project:

"Hey Claude, list my project on AiList"

Your agent reads your repo and calls submit_project with the right details.

Find MCP servers:

search_projects(query: "memory", category: "mcp-server")

See what's trending:

get_trending(limit: 5)

Browse by technology:

search_projects(built_with: "Claude Code", sort: "stars")

About AiList

AiList is a curated directory of Ai projects. Every listing gets its own SEO-indexed page, and the REST API is 100% public — making your project discoverable by both humans and AI agents.

License

MIT

Available Tools

7 tools
get_projectA

Get full details for a specific Ai project by its slug. Returns description, URLs, stats, category, tags, and more.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesProject slug (the URL-friendly name, e.g. "cogmemai-mcp")

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions the return fields (description, URLs, stats, category, tags, and more), which gives some insight into behavior, but does not disclose whether it requires authentication, whether data is real-time or cached, or what 'and more' excludes. The score is adequate but not exceptional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the primary action and resource, and adds useful content by listing relevant fields. It earns its place without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there are no annotations, no output schema, and only one simple required parameter, the description provides enough information for an AI agent to correctly invoke the tool and understand what data to expect back (description, URLs, stats, category, tags). A small gap is not specifying if additional fields beyond those listed are included.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the only parameter (slug) is already well-described in the schema with an example. The description adds no extra meaning beyond the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('full details for a specific Ai project by its slug'), and clearly distinguishes this tool from siblings like 'get_trending' and 'search_projects' by indicating it retrieves a single project by identifier.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly tells when to use this tool (when you have a project slug and want full details), but does not mention when not to use it or provide alternatives among siblings. Since the context signals include sibling tool names, some implicit guidance is available but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statsA

Get AiList directory statistics including total projects, projects added this week, and category breakdowns.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. 'Get' implies a read operation, but the description does not explicitly confirm idempotency, cost implications, authentication needs, or whether the data is cached. It lists included fields but adds no behavioral context beyond that.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that front-loads the verb and resource ('Get AiList directory statistics') and then lists the specific data points. There is no redundancy, fluff, or irrelevant detail; every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple, parameterless tool, the description sufficiently communicates the output: total projects, weekly additions, and category breakdowns. Without an output schema, minor additional detail about the response format (e.g., 'returns a JSON object') would be nice but is not essential. The description covers the core functionality.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so schema description coverage is trivially 100%. Per guidelines, a baseline of 4 applies when there are no parameters. The description does not need to add parameter semantics, and it correctly omits any reference to nonexistent parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'AiList directory statistics', followed by specific outputs: total projects, projects added this week, and category breakdowns. This is distinct from sibling tools like get_trending (trending projects) and get_project (single project), making the tool's purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus its siblings. For instance, it does not contrast with get_trending (trending data) or list_categories (just categories). The agent is left to infer whether this is the right tool for overview stats or if another sibling is more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesA

List all available project categories on AiList with project counts. Use this to discover what types of Ai projects are in the directory.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full transparency burden. It clearly states the tool returns categories with project counts, implying a safe, read-only operation with no side effects. The verb 'List' and phrase 'discover what types' indicate a simple query. A small gap exists: it doesn't explicitly state it's read-only, but the context is highly supported.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description uses two efficient sentences without any wasted words. It front-loads the core purpose ('List all available project categories on AiList with project counts.') and immediately follows with the usage rationale, earning its place completely.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, no output schema, and no annotations, the description fully covers the behavior: it lists categories with counts for directory discovery. For a simple read-only list tool with no inputs or side effects, this is complete and sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with zero parameters, removing the need for parameter documentation. The description adds value by explaining the return contents (project counts included), which goes beyond the empty schema. A baseline of 4 is appropriate given no parameters need clarification.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('List all available project categories'), identifies the specific resource ('project categories on AiList'), and indicates what information is included ('with project counts'). It also explains the tool's utility, distinguishing it from siblings that search or get individual projects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use this tool ('Use this to discover what types of Ai projects are in the directory'). It implicitly contrasts with sibling tools like 'search_projects','get_project', and 'get_trending', which serve different discovery purposes (filtered search vs. broad overview).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_projectsA

Search and browse Ai projects on AiList. Find MCP servers, CLI tools, libraries, web apps, APIs, plugins, models, datasets, and agents. Supports filtering by category and sorting by stars, trending, newest, name, or views.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (default 1)
sortNoSort order: stars (default), trending, newest, name, viewsstars
queryNoSearch query (optional — omit to browse all projects)
categoryNoFilter by category: mcp-server, cli-tool, library, web-app, api, plugin, model, dataset, agent, other
per_pageNoResults per page (default 24, max 100)
built_withNoFilter by technology used (e.g. "Claude Code", "Cursor")

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes the operation (search and browse) but does not disclose whether it is read-only, any side effects, rate limits, or pagination behavior. It is adequate for a search tool but lacks depth expected without annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose, and every sentence adds value. No redundancy or fluff. It is appropriately concise for the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 6 parameters, no output schema, and no annotations, the description covers the main search and browse functionality but omits details like pagination behavior, default sort, or what the response format looks like. It is complete enough for basic use but could be more informative for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds context by listing project types (MCP servers, CLI tools, etc.) and mentions filtering/sorting, but it largely echoes the schema. It does not add substantial meaning beyond what the schema already provides for each parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches and browses AI projects on AiList, specifying it finds MCP servers, CLI tools, libraries, etc. It mentions filtering by category and sorting options, which clearly distinguishes it from siblings like get_trending (likely just trending) or get_project (single project).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (for general search and browse) but does not explicitly differentiate from siblings or state when not to use it. For example, it could mention that get_trending is for trending-only or get_project for a specific project. The guidance is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_projectA

Submit a project to AiList. When a user says "list my project on AiList", read their repo and call this with the details. The project goes live in minutes after auto-review. Requires AILIST_API_KEY env var — get a free key at hifriendbot.com/ai-list/submit/

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoProject homepage URL
nameYesProject name (required)
tagsNoComma-separated tags (e.g. "memory, mcp, claude")
taglineNoShort tagline describing the project
categoryNoProject category: mcp-server, cli-tool, library, web-app, api, plugin, model, dataset, agent, other
built_withNoTechnologies used (e.g. "Node.js, TypeScript, Zod")
github_urlNoGitHub repository URL
creator_urlNoCreator homepage or profile URL
descriptionNoFull project description (supports markdown)
npm_packageNonpm package name (e.g. "cogmemai-mcp")
creator_nameNoCreator or organization name
pypi_packageNoPyPI package name

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It discloses the auto-review process, deployment timeline ('goes live in minutes'), and API key requirement ('Requires AILIST_API_KEY env var'). No contradictions noted.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact at three sentences, front-loading the purpose and then adding key behavioral details. Every sentence is necessary, though the instruction to 'read their repo' could be slightly more precise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 12 parameters, no output schema, and no annotations, the description covers the essential usage context, auth requirements, and process timeline. Some minor items like error handling or rate limits are omitted, but the core is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds no extra parameter meaning beyond the schema, but does not need to since the schema is already comprehensive and covers all 12 parameters with clear descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool submits a project to AiList, using the specific verb 'submit' and resource 'project'. It distinguishes itself from siblings like search_projects or get_trending by focusing on creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit guidance on when to use it ('when a user says list my project on AiList') and mentions reading their repo before calling. However, it does not explicitly state when NOT to use it or name alternative tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_projectA

Update an existing project on AiList. You must own the project (submitted with the same API key). Use this to keep listings current when new features ship or versions change. Requires AILIST_API_KEY env var.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoUpdated homepage URL
slugYesProject slug to update (e.g. "cogmemai")
tagsNoUpdated comma-separated tags
taglineNoUpdated tagline
categoryNoUpdated category
built_withNoUpdated technologies used
github_urlNoUpdated GitHub repository URL
descriptionNoUpdated description (supports markdown)
npm_packageNoUpdated npm package name
pypi_packageNoUpdated PyPI package name

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It mentions ownership and the required API key but omits critical mutation semantics (e.g., whether this is a full replacement or partial update, success/error responses, or side effects).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with purpose and consists of four sentences, each adding value. It is reasonably concise but could combine the ownership and env var notes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 10 optional parameters and no output schema, the description is insufficiently complete. It does not explain that only provided fields are updated, what the return value is, or validation behavior. More context is needed for an agent to use this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds no additional parameter meaning beyond usage context; it does not elaborate on any parameter's purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Update' and the resource 'an existing project on AiList', distinguishing this tool from siblings like submit_project (create) and get_project (read).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides context for when to use the tool ('keep listings current when new features ship or versions change') and states the ownership requirement. However, it does not explicitly exclude creation or reference submit_project as an alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv1.0.4
    • First observedget_project
    • First observedget_stats
    • First observedget_trending
    • First observedlist_categories
    • First observedsearch_projects
    • First observedsubmit_project
    • First observedupdate_project

TDQS

A4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: trending discovery, searching, single project retrieval, category listing, stats, project submission, and project update. No overlapping functionality.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case (e.g., get_trending, search_projects, submit_project), making the intent immediately clear.

Tool Count5/5

7 tools is well-scoped for a project directory server, covering browsing, searching, details, categories, stats, and write operations without unnecessary bloat.

Completeness4/5

Covers most core CRUD operations (read, search, create, update) but lacks a delete tool. However, the domain probably doesn't need deletion often, and other important workflows are present.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables users to search and discover over 500 AI agent endpoints and x402 APIs directly from MCP-compatible clients like Claude and Cursor. It provides tools to query endpoints by keyword, category, or capability while offering access to detailed provider statistics.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to search, discover, and get recommendations from 20,000+ skills, tools, agents, rules, and MCP servers.
    5
    26
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to search a directory of 13,870+ MCP servers, 4,384+ agent skills, and plugins from Remote OpenClaw, returning install commands directly.
    3
    64
    3
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hifriendbot/ailist-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server