MCP-123
A lightweight implementation that provides the simplest way to set up an MCP server and client, requiring just two lines of code to create a fully functional system.
README
MCP-123: Simple MCP Server and Client Implementation
Overview
MCP-123 provides the simplest way to set up an MCP server and client. With just two lines of code, you can have a fully functional server or client running. This project aims to streamline the process of implementing an MCP system, making it accessible for developers of all levels.
Features
- Easy Setup: Get started with minimal code.
- Lightweight: Designed to be efficient and fast.
- Flexible: Works well in various environments.
- Documentation: Clear examples to guide you.
Installation
To install MCP-123, clone the repository and install the dependencies:
git clone https://github.com/Uhalf-y/MCP-123.git
cd MCP-123
npm install
Usage
Setting Up a Server
To set up a server, use the following two lines of code:
const MCP = require('mcp');
const server = new MCP.Server();
Setting Up a Client
To set up a client, you can do it in the same straightforward manner:
const MCP = require('mcp');
const client = new MCP.Client();
This simplicity allows you to focus on building your application without getting bogged down in configuration details.
Examples
Server Example
Here’s a basic example of how to create a server that listens for connections:
const MCP = require('mcp');
const server = new MCP.Server();
server.on('connection', (client) => {
console.log('Client connected');
client.on('message', (message) => {
console.log('Received message:', message);
});
});
Client Example
And here’s how to set up a client that connects to the server:
const MCP = require('mcp');
const client = new MCP.Client();
client.connect('localhost', 3000, () => {
console.log('Connected to server');
client.send('Hello, server!');
});
Configuration
MCP-123 allows you to configure various settings for both the server and client. Here are some common options:
Server Configuration
- Port: Change the port on which the server listens.
- Max Connections: Set the maximum number of clients that can connect.
Example:
const server = new MCP.Server({ port: 3000, maxConnections: 10 });
Client Configuration
- Reconnect Attempts: Specify how many times the client should attempt to reconnect on failure.
- Timeout: Set a timeout for the connection.
Example:
const client = new MCP.Client({ reconnectAttempts: 5, timeout: 2000 });
Events
MCP-123 supports various events that you can listen to for handling different scenarios.
Server Events
- connection: Fired when a new client connects.
- disconnection: Fired when a client disconnects.
- error: Fired when an error occurs.
Client Events
- connect: Fired when the client successfully connects to the server.
- disconnect: Fired when the client disconnects.
- error: Fired when an error occurs.
Error Handling
Handling errors is crucial for a robust application. Here’s how you can manage errors in both the server and client:
Server Error Handling
server.on('error', (error) => {
console.error('Server error:', error);
});
Client Error Handling
client.on('error', (error) => {
console.error('Client error:', error);
});
Testing
To ensure that your MCP implementation works as expected, you can run the tests included in the repository. Use the following command:
npm test
Make sure you have all dependencies installed before running the tests.
Contributing
We welcome contributions to improve MCP-123. Here’s how you can help:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes.
- Submit a pull request.
Please ensure that your code adheres to the existing style and includes tests where applicable.
License
MCP-123 is licensed under the MIT License. See the LICENSE file for more details.
Releases
For the latest releases, visit the Releases section. Here, you can download the latest version and find information about new features and bug fixes.
Contact
For any inquiries or issues, feel free to reach out via GitHub issues or contact the maintainers directly.
Acknowledgments
Thanks to the contributors and the open-source community for their support. Your efforts make projects like MCP-123 possible.
Resources
FAQ
How do I get started with MCP-123?
Simply follow the installation and usage instructions provided above. You’ll be up and running in no time.
Can I use MCP-123 in production?
Yes, MCP-123 is designed for both development and production use. Ensure you test your implementation thoroughly.
What if I encounter issues?
If you face any problems, check the issues section on GitHub or create a new issue with detailed information about your problem.
Are there any examples available?
Yes, examples are included in the documentation above. You can also find more examples in the examples directory of the repository.
Is there a community for MCP-123?
You can engage with the community through GitHub discussions and issues. We encourage collaboration and knowledge sharing.
Conclusion
Explore the simplicity and power of MCP-123 for your next project. Enjoy seamless communication between your server and client with just a few lines of code. For further details, check the Releases section.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.