Geenie MCP Proxy Server

Geenie MCP Proxy Server

Acts as an intermediary between Claude Desktop and Amazon's MCP server to handle authentication, token management, and subscription-based tool filtering. It provides a secure layer for managing access to Amazon tools while facilitating seamless communication between the client and the model server.

Category
Visit Server

README

Geenie MCP Proxy Server

The Geenie MCP proxy server sits between Claude Desktop and Amazon's MCP server, handling authentication, token management, and subscription-based tool filtering.

Quick Start

1. Install Dependencies

npm install

2. Set Up Environment

Copy .env.example to .env and fill in your credentials:

cp .env.example .env

For local development, the mock Amazon MCP server endpoints are pre-configured.

3. Run the Servers

You'll need two terminal windows:

Terminal 1 - Mock Amazon MCP Server:

npm run dev:mock

Terminal 2 - Geenie Proxy Server:

npm run dev

The mock server runs on port 9000, and the proxy runs on port 3000.

4. Test the Health Check

curl http://localhost:3000/health

5. Test the MCP Proxy

curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -d '{"method": "tools/list", "params": {}}'

You should see a list of tools returned from the mock Amazon server.

Project Structure

geenie-proxy/
├── src/
│   ├── index.ts              # Server entry point
│   ├── config/
│   │   └── env.ts            # Environment configuration
│   ├── routes/
│   │   ├── health.ts         # Health check endpoints
│   │   └── mcp.ts            # MCP proxy route
│   └── utils/
│       └── logger.ts         # Pino logger setup
├── tests/
│   └── mocks/
│       └── amazon-server.ts  # Mock Amazon MCP server
└── package.json

Development Phases

✅ Phase 1: Basic Proxy (Current)

  • [x] Project setup with TypeScript
  • [x] Fastify server with CORS
  • [x] Health check endpoint
  • [x] Basic MCP proxy route
  • [x] Mock Amazon MCP server

⏳ Phase 2: Authentication (Next)

  • [ ] API key validation middleware
  • [ ] Subscription status checking
  • [ ] Supabase integration
  • [ ] Caching layer

⏳ Phase 3: Token Management

  • [ ] Amazon token refresh logic
  • [ ] Multi-account handling
  • [ ] Token expiry checks

⏳ Phase 4: Tool Filtering

  • [ ] Subscription tier restrictions
  • [ ] Global tool blacklist
  • [ ] Disabled tools injection

⏳ Phase 5: Production Ready

  • [ ] Token encryption
  • [ ] Rate limiting
  • [ ] Error handling improvements
  • [ ] Railway deployment

Available Scripts

  • npm run dev - Start proxy server with hot reload
  • npm run dev:mock - Start mock Amazon MCP server
  • npm run build - Compile TypeScript to JavaScript
  • npm start - Run production build
  • npm test - Run tests (coming soon)

Environment Variables

See .env.example for all available configuration options.

Testing

Currently using a mock Amazon MCP server that simulates:

  • tools/list - Returns available MCP tools
  • tools/call - Simulates tool execution with mock data

Next Steps

  1. Add API key validation (Phase 2)
  2. Integrate with Supabase for user/subscription data
  3. Implement Amazon token refresh logic
  4. Add subscription-based tool filtering
  5. Deploy to Railway

License

MIT

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured