custom-mcp-server
This project is a custom MCP server designed for AI assistants, offering functionality such as web searching, file operations, GitHub integration, and more. It supports usage and management of multiple operations and can be installed with Claude for AI accessibility.
Custom MCP Server
A custom Machine Conversation Protocol (MCP) server that integrates various tools for AI assistants:
- Brave Search - Web and local search capabilities
- Secure Filesystem - File operations with security controls
- GitHub Integration - Repository and code management
- Sequential Thinking - Step-by-step problem solving
- Download Utility - Download files from the internet
Quick Start
# Clone the repository
git clone https://github.com/degenhero/custom-mcp-server.git
cd custom-mcp-server
# Install dependencies and set up environment
npm run install:all
# Start both servers
npm run start:both
The servers will run at:
- MCP Server: http://localhost:3000
- MCP Protocol Server: http://localhost:3001
Usage with Claude
To use this custom MCP server with Claude, you need to install it as an MCP server:
npx @anthropic-ai/install-mcp custom-mcp-server http://localhost:3001
After installation, Claude will have access to all the functions provided by this server.
Architecture
This project consists of two main components:
- Custom MCP Server (index.js) - The core server that implements all the tool functions
- MCP Protocol Server (mcp-protocol.js) - Adapts the custom server to the MCP protocol standard
Available Functions
Brave Search
brave_web_search
- Perform web searchesbrave_local_search
- Search for local businesses and places
Filesystem Operations
read_file
- Read file contentswrite_file
- Create or update filesedit_file
- Make line-based editscreate_directory
- Create directorieslist_directory
- List directory contents- And more...
GitHub Integration
create_repository
- Create new repositoriessearch_repositories
- Search for repositoriesget_file_contents
- Read files from repositoriespush_files
- Push files to repositories- And more...
Sequential Thinking
sequentialthinking
- Step-by-step problem solving
Download Utility
download_file
- Download files from URLsdownload_multiple_files
- Download multiple files at once
Configuration
Configuration is managed through environment variables in a .env
file:
PORT=3000 # Port for the main server
MCP_PROTOCOL_PORT=3001 # Port for the MCP protocol server
BRAVE_API_KEY=your_key_here # API key for Brave Search
GITHUB_TOKEN=your_token_here # GitHub access token
Development
Adding New Functions
To add a new function:
- Create a handler in the appropriate file in the
functions
directory - Add the function definition to
mcp-schema.json
- Update the routing in
index.js
Testing
You can test functions directly against the MCP server:
curl -X POST http://localhost:3000/mcp \
-H "Content-Type: application/json" \
-d '{"functionName": "brave_web_search", "parameters": {"query": "test query"}}'
Documentation
For detailed documentation on all available functions, see .
License
This project is licensed under the MIT License - see the LICENSE file for details.