remote-mcp-servers
Explore a community-maintained list of remote Model Context Protocol (MCP) servers. Find, learn about, and check the reachability of MCP-enabled services.
GitHubスター
3
ユーザー評価
未評価
フォーク
0
イシュー
0
閲覧数
1
お気に入り
0
Remote MCP Servers
A dynamic, community-driven registry of remote Model Context Protocol (MCP) servers. This web application allows users to discover, list, and submit MCP servers.
Live Site: https://remote-mcp-servers.com
Purpose
The Model Context Protocol (MCP) enables applications to securely share contextual information with AI models. As the ecosystem of MCP-enabled services grows, this registry aims to:
- Provide a centralized, discoverable, and up-to-date list of MCP servers.
- Empower the community to contribute and maintain server listings through a user-friendly interface.
- Offer a dynamic API for accessing server information programmatically.
Features
- Dynamic Server Listings: Displays MCP servers fetched from a live database.
- User Accounts & Submission: Users can sign up, log in, and submit their own MCP servers for inclusion in the registry (pending review).
- Server Management Dashboard: Logged-in users can view and manage their submitted servers.
- Filtering & Pagination API: A public API endpoint (
/api/servers
) allows fetching server data with support for filtering by various criteria (category, name/description query, official status, authentication type) and pagination. - Server Details: Shows name, description, category, maintainer, MCP URL, authentication type, and other relevant metadata.
MCP Servers API
Main Endpoint
GET /api/servers
Returns a paginated and filterable list of approved MCP servers.
Example Usage
- Get default list (page 1, 10 items):
/api/servers
- Get page 2 with 5 items:
/api/servers?page=2&limit=5
- Filter by category "AI Agent":
/api/servers?categories=AI%20Agent
- Filter by multiple categories:
/api/servers?categories=AI%20Agent,Utility
- Search for "MyServer" in name or description:
/api/servers?q=MyServer
- Filter by official status:
/api/servers?isOfficial=true
- Filter by authentication type:
/api/servers?authTypes=OAuth
- Filter by multiple authentication types:
/api/servers?authTypes=OAuth,APIKey
- Combine filters:
/api/servers?categories=Utility&q=secure&limit=15&isOfficial=true
Supported Query Parameters
page
(number, default: 1): The page number for pagination.limit
(number, default: 10, max: 100): The number of items per page.q
(string): Search query (matches server name and description, case-insensitive).categories
(string, comma-separated): Filter by one or more server categories.authTypes
(string, comma-separated): Filter by one or more authentication types (e.g., "OAuth", "APIKey", "None").dynamicClientRegistration
(boolean:true
orfalse
): Filter by support for dynamic client registration.isOfficial
(boolean:true
orfalse
): Filter by official server status.
Note:
- For multi-value filters (
categories
,authTypes
), provide a comma-separated list (e.g.,categories=AI,Utility
).
Response Format
{
"data": [
/* array of server objects */
],
"pagination": {
"currentPage": 1,
"itemsPerPage": 10,
"totalItems": 42,
"totalPages": 5,
"hasNextPage": true,
"hasPreviousPage": false
}
}
Get All Categories
GET /api/servers/categories
Returns a sorted array of all unique categories in the registry.
Example Response:
{ "categories": ["AI Agent", "Utility", "Productivity"] }
Get All Authentication Types
GET /api/servers/auth-types
Returns a sorted array of all unique authentication types in the registry.
Example Response:
{ "authTypes": ["OAuth", "APIKey", "None"] }
Summary
Use /api/servers
for paginated, filterable server lists.
Use /api/servers/categories
and /api/servers/auth-types
to power dynamic filter UIs.
All endpoints return JSON.
Tech Stack
- Framework: Next.js (App Router)
- Language: TypeScript
- Database & Auth: Supabase
- UI Components: Shadcn UI
- Styling: Tailwind CSS
- Icons: Lucide React
- Forms: React Hook Form + Zod for validation
Getting Started
Prerequisites
Installation & Setup
Clone the repository:
git clone https://github.com/portal-labs-infrastructure/remote-mcp-servers cd remote-mcp-servers
Install dependencies:
npm install # or yarn install
Set up Supabase Environment Variables:
- Sign up for a free Supabase account at supabase.com and create a new project.
- In your Supabase project dashboard, go to "Project Settings" > "API".
- You will need your Project URL and the
anon
public API key. - Create a
.env.local
file in the root of your cloned project. - Add your Supabase credentials to
.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
- Database Schema: You will need to set up the
discoverable_mcp_servers
table in your Supabase database. Use the csv inseed/output.csv
in the Supabase dashboard to create the table and populate it with the initial data. - Run SQL Scripts: Add created_at and status columns to the
discoverable_mcp_servers
table. You can run the following SQL in the Supabase SQL editor: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';
Running Locally
Start the development server:
npm run dev # or yarn dev
The application will typically be available at
http://localhost:3000
.
How to Contribute
We encourage contributions to expand the registry!
- Sign Up / Log In:
- Visit the live site and create an account or log in if you already have one.
- Submit Your Server:
- Navigate to your dashboard or the "Add New Server" page.
- Fill out the form with your MCP server's details.
- Review Process:
- Submitted servers will typically go into a "pending review" state.
- Administrators will review submissions for accuracy and appropriateness before approving them to be publicly listed.
For code contributions (bug fixes, new features):
- Fork the repository.
- Create a new branch for your feature or fix.
- Make your changes.
- Commit your changes and push to your fork.
- Submit a Pull Request to the
main
branch of the original repository with a clear description of your changes.
Future Enhancements (Ideas)
- Admin panel for reviewing and managing server submissions.
- User profiles and ability to edit submitted servers.
- Notifications for server submission status changes.
- Advanced search and sorting options on the frontend.
- MCP server to expose the server registry as an MCP server itself.
- Python client to expose the server registry discovery to LLMs.
License
This project is licensed under the MIT License. See the LICENSE
file for details.
2
フォロワー
6
リポジトリ
0
Gist
75
貢献数