mcpField
T
thealgorithms-mcp

thealgorithms-mcp

本地服务
github.com/mcande21开发工具022 周前更新

关于 thealgorithms-mcp

thealgorithms-mcp 是面向开发者和编码 Agent 的 MCP 服务,可搜索 TheAlgorithms 各语言仓库中的算法实现,并按需获取源码与示例。

主要功能

  1. 01发现已索引语言及未收录原因
  2. 02按语言和类别搜索算法
  3. 03获取源码和提取出的示例
  4. 04比较不同语言的实现
  5. 05自动补全算法名称

适用场景

  1. 01查找指定语言的算法实现
  2. 02查看源码和示例以评估复用
  3. 03比较不同语言仓库中的对应实现

MCP 相关

向 MCP 客户端提供语言与类别列表、算法搜索和获取、跨语言比较及名称建议等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mcande21-thealgorithms": {
"command": "uvx",
"args": [
"thealgorithms-mcp"
]
}
}
}
启动命令uvx thealgorithms-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypithealgorithms-mcp0.3.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

thealgorithms-mcp

mcp-name: io.github.mcande21/thealgorithms-mcp

一个用于查询 TheAlgorithms 组织中所有语言仓库的 MCP 服务,可搜索算法实现并获取任意实现及其文件内示例。

语言会从组织中自动发现(而非使用硬编码列表):发布了可解析 DIRECTORY.md 的仓库才会被索引。目前支持 24 种语言(Python、Java、C++、JavaScript、Rust、C、TypeScript、PHP、Dart、Kotlin、Ruby、R、Scala、Swift、Julia、Haskell、MATLAB、Zig、Fortran、Nim、Clojure、F#、Jule、aarch64-assembly)。没有 DIRECTORY.md 的仓库(Go、C#、Lua、Solidity 等)会由 list_languages 报告,并说明未纳入的原因,不会出现未提示的遗漏。

混合式设计:每个仓库的 DIRECTORY.md 索引都会缓存在本地(ETag + TTL);文件内容则按需从 raw.githubusercontent.com 获取。组织和语言清单通过 GitHub API 自动发现,并缓存 7 天。无需令牌(设置 GITHUB_TOKEN 可提高速率限制)。请参阅 DESIGN.md。

工具

工具用途
list_languages()已索引的语言(含数量和别名),以及说明未纳入原因的仓库
list_categories(language='python')某种语言的分类及其条目数量
search_algorithms(query, language='python', category?, limit=10)排序后的 {name, category, path, score}
get_category(category, language='python')某个分类中的所有算法
get_algorithm(path, language='python', include_source=True)源码及提取出的示例
compare(name, languages?, min_score=90, limit_per_language=1)跨语言的实际匹配结果及 missing_in
suggest(prefix, language='python', limit=10)基于 Trie 的名称自动补全(dij → Dijkstra)

language 接受语言名称或别名(cpp/c++、js、ts 等)。典型流程: search_algorithms("dijkstra", language="rust") → get_algorithm("src/graph/dijkstra.rs", language="rust")。 在语言支持文件内示例约定时,会提取示例(Python doctests、Rust doc-tests);其他语言则返回源码并附带说明。

安装

从 PyPI 安装(推荐):

{ "thealgorithms": { "command": "uvx", "args": ["thealgorithms-mcp"] } }

从 GitHub 安装:

{ "thealgorithms": {
    "command": "uvx",
    "args": ["--from", "git+https://github.com/mcande21/thealgorithms-mcp", "thealgorithms-mcp"] } }

从本地检出版本安装(开发):

uv sync
uv run thealgorithms-mcp          # serves over stdio

将上述任一项添加到 ~/.normandy-generic/mcp.json(或你的 MCP 客户端配置)中。

验证

uv run python scripts/verify_stdio.py                 # multi-language contract over stdio
uv run python scripts/verify_language.py rust         # one language, end-to-end

该测试程序会通过 stdio 启动服务,并针对实时组织验证每个工具,包括跨 ≥8 种语言获取二分搜索实现,以及跨语言的 compare()。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。