远程MCP服务器
远程模型上下文协议(MCP)服务器的动态、社区驱动的注册表。此web应用程序允许用户发现、列出和提交MCP服务器。
现场: https://remote-mcp-servers.com
目的
模型上下文协议(MCP)使应用程序能够与AI模型安全地共享上下文信息。随着支持MCP的服务生态系统的发展,该注册表旨在:
- 提供一个集中的、可发现的、最新的MCP服务器列表。
- 通过用户友好的界面,使社区能够贡献和维护服务器列表。
- 提供一个动态API,用于以编程方式访问服务器信息。
特性
- 动态服务器列表: 显示从实时数据库获取的MCP服务器。
- 用户帐户和提交: 用户可以注册、登录并提交自己的MCP服务器以纳入注册表(等待审核)。
- 服务器管理仪表板: 登录的用户可以查看和管理他们提交的服务器。
- 过滤和分页API: 公共API终结点(
/api/servers)允许获取服务器数据,支持按各种条件(类别、名称/描述查询、官方状态、身份验证类型)和分页进行过滤。 - 服务器详细信息: 显示名称、描述、类别、维护者、MCP URL、身份验证类型和其他相关元数据。
MCP服务器API
主要终点
获取 /api/servers
返回已批准的MCP服务器的分页和可筛选列表。
示例用法
- 获取默认列表(第1页,10个项目):\
/api/servers
- 获取包含5个项目的第2页:\
/api/servers?page=2&limit=5
- 按类别“AI Agent”筛选:\
/api/servers?categories=AI%20Agent
- 按多个类别筛选:\
/api/servers?categories=AI%20Agent,Utility
- 在名称或描述中搜索“MyServer”:\
/api/servers?q=MyServer
- 按官方状态筛选:\
/api/servers?isOfficial=true
- 按身份验证类型筛选:\
/api/servers?authTypes=OAuth
- 按多种身份验证类型筛选:\
/api/servers?authTypes=OAuth,APIKey
- 组合过滤器:\
/api/servers?categories=Utility&q=secure&limit=15&isOfficial=true
支持的查询参数
page(number,默认值:1):分页的页码。limit(数字,默认值:10,最大值:100):每页的项目数。q(string):搜索查询(匹配服务器名称和描述,不区分大小写)。categories(字符串,逗号分隔):按一个或多个服务器类别筛选。authTypes(字符串,逗号分隔):按一种或多种身份验证类型(例如“OAuth”、“APIKey”、“None”)进行筛选。dynamicClientRegistration(布尔值:true或false):按支持动态客户端注册进行筛选。isOfficial(布尔值:true或false):按官方服务器状态筛选。
注:
- 用于多值过滤器(
categories,authTypes),提供逗号分隔的列表(例如。,categories=AI,Utility).
响应格式
{
"data": [
/* array of server objects */
],
"pagination": {
"currentPage": 1,
"itemsPerPage": 10,
"totalItems": 42,
"totalPages": 5,
"hasNextPage": true,
"hasPreviousPage": false
}
}获取所有类别
获取 /api/servers/categories
返回注册表中所有唯一类别的排序数组。
示例响应:
{ "categories": ["AI Agent", "Utility", "Productivity"] }获取所有身份验证类型
获取 /api/servers/auth-types
返回注册表中所有唯一身份验证类型的排序数组。
示例响应:
{ "authTypes": ["OAuth", "APIKey", "None"] }总结
使用 /api/servers 用于分页、可过滤的服务器列表。
使用 /api/servers/categories 和 /api/servers/auth-types 为动态滤波器UI供电。
所有端点都返回JSON。
技术栈
- 框架: Next.js (应用路由器)
- 语言: TypeScript
- 数据库验证(&A): Supabase
- UI组件: Shadcn用户界面
- 造型: 顺风CSS
- 图标: Lucide反应
- 形式: React钩子形式 + 萨德 用于验证
入门指南
先决条件
安装和设置
- 克隆存储库:
git clone https://github.com/portal-labs-infrastructure/remote-mcp-servers
cd remote-mcp-servers- 安装依赖项:
npm install
# or
yarn install- 设置Supabase环境变量:
- 注册一个免费的Supabase帐户 网站 supabase.com 并创建一个新项目。 - 在您的Suabase项目面板中,转到“项目设置”>“API”。 - 你需要你的 项目Url 和那个 anon 公共API密钥. - 创建一个 .env.local 克隆项目根目录中的文件。 - 将您的Supabase凭据添加到 .env.local:
NEXT_PUBLIC_SUPABASE_URL=YOUR_SUPABASE_PROJECT_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY=YOUR_SUPABASE_ANON_PUBLIC_KEY
# For server-side actions that might need elevated privileges (like admin tasks, not typically user submissions if RLS is set up correctly)
# SUPABASE_SERVICE_ROLE_KEY=YOUR_SUPABASE_SERVICE_ROLE_KEY- 数据库架构: 您需要设置 discoverable_mcp_servers Supabase数据库中的表。 在中使用csv seed/output.csv 在Supabase仪表板中创建表格并用初始数据填充。 - 运行SQL脚本: 将created_at和状态列添加到 discoverable_mcp_servers 桌子。您可以在Supabase SQL编辑器中运行以下SQL:
UPDATE public.discoverable_mcp_servers
SET created_at = NOW()
WHERE created_at IS NULL; UPDATE public.discoverable_mcp_servers
SET status = 'approved'
WHERE status IS NULL OR status != 'approved';本地运行
- 启动开发服务器:
npm run dev
# or
yarn dev该应用程序通常可在 http://localhost:3000.
如何做出贡献
我们鼓励为扩大登记册做出贡献!
- 注册/登录:
- 访问实时网站并创建帐户或登录(如果您已经有帐户)。
- 提交您的服务器:
- 导航到您的仪表板或“添加新服务器”页面。 - 在表格中填写您的MCP服务器的详细信息。
- 审核流程:
- 提交的服务器通常会进入“待审核”状态。 - 管理员将在批准公开上市之前审查提交的内容的准确性和适当性。
对于代码贡献(bug修复、新功能):
- 分叉存储库。
- 为您的功能或修复创建新分支。
- 进行更改。
- 提交你的更改并推动你的叉子。
- 提交拉取请求 到
main原始存储库的分支,清楚地描述您的更改。
未来增强功能(想法)
- 用于查看和管理服务器提交的管理面板。
- 用户配置文件和编辑提交服务器的能力。
- 服务器提交状态更改的通知。
- 前端的高级搜索和排序选项。
- MCP服务器将服务器注册表作为MCP服务器本身公开。
- Python客户端向LLM公开服务器注册表发现。
许可证
该项目根据MIT许可证获得许可。请参阅 LICENSE 文件以获取详细信息。
