Mock
БесплатноНе проверенA minimal local HTTP MCP mock server for development and testing, providing predictable tool responses with OAuth token support and zero dependencies.
Описание
A minimal local HTTP MCP mock server for development and testing, providing predictable tool responses with OAuth token support and zero dependencies.
README
Minimal local HTTP MCP mock server for development integration.
Why this exists
- fast local connector testing
- zero dependencies and setup
- deterministic tool responses for dev and demos
Requirements
- Node.js 18+
Run
npm start
Defaults:
- host:
0.0.0.0 - port:
8787 - MCP endpoint:
http://localhost:8787/mcp - OAuth token endpoint:
http://localhost:8787/oauth/token - OAuth authorize endpoint:
http://localhost:8787/oauth/authorize - Direct email/password login endpoint:
http://localhost:8787/oauth/login
Optional overrides:
HOST=0.0.0.0 PORT=8787 npm start
Code structure
server.mjs: HTTP bootstrap and route wiringsrc/config.mjs: environment-driven config and client loadingsrc/http.mjs: shared HTTP/response/body parsing helperssrc/auth.mjs: token issuing + Bearer validationsrc/tools.mjs: mock tool catalog + implementationssrc/rpc.mjs: MCP JSON-RPC dispatcher + cancellation handling
Health check
GET /health
Example:
curl http://127.0.0.1:8787/health
MCP methods supported
initializenotifications/initializedtools/listtools/call$/cancelRequestnotifications/cancelledresources/list(returns empty)prompts/list(returns empty)
Auth flow
POST /mcp requires Authorization: Bearer <access_token>.
Default OAuth client:
client_id:demo-clientclient_secret:demo-secret- scopes:
crm.read crm.write crm.enrich
Default mock users:
[email protected]/alice-passwordwithcrm.read crm.write crm.enrich[email protected]/bob-passwordwithcrm.read
Client credentials token
Use this for machine-to-machine testing:
curl -X POST http://localhost:8787/oauth/token ^
-H "Content-Type: application/x-www-form-urlencoded" ^
-d "grant_type=client_credentials&client_id=demo-client&client_secret=demo-secret&scope=crm.read%20crm.write%20crm.enrich"
Mock OAuth authorization code login
Open the authorize URL in a browser. The mock server renders a login page, accepts one of the default mock users, then redirects to redirect_uri with a temporary code.
http://localhost:8787/oauth/authorize?response_type=code&client_id=demo-client&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fcallback&scope=crm.read%20crm.write&state=demo-state
Exchange the returned code for an access token:
curl -X POST http://localhost:8787/oauth/token ^
-H "Content-Type: application/x-www-form-urlencoded" ^
-d "grant_type=authorization_code&client_id=demo-client&client_secret=demo-secret&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fcallback&code=<code>"
Direct mock email/password login
Use this when you want a token response directly from the mock server without browser redirects:
curl -X POST http://localhost:8787/oauth/login ^
-H "Content-Type: application/json" ^
-d "{\"client_id\":\"demo-client\",\"email\":\"[email protected]\",\"password\":\"alice-password\",\"scope\":\"crm.read crm.write\"}"
Tools exposed
crm.search_contacts- input:
{ "query": "alice" }
- input:
crm.create_deal- input:
{ "title": "Pilot", "amount": 25000, "contactId": "c_1001" }
- input:
Quick test payloads
Initialize:
curl -X POST http://127.0.0.1:8787/mcp ^
-H "Authorization: Bearer <access_token>" ^
-H "Content-Type: application/json" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{}}"
List tools:
curl -X POST http://127.0.0.1:8787/mcp ^
-H "Authorization: Bearer <access_token>" ^
-H "Content-Type: application/json" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/list\",\"params\":{}}"
Call crm.search_contacts:
curl -X POST http://127.0.0.1:8787/mcp ^
-H "Authorization: Bearer <access_token>" ^
-H "Content-Type: application/json" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"crm.search_contacts\",\"arguments\":{\"query\":\"alice\"}}}"
Cancel a running request:
curl -X POST http://127.0.0.1:8787/mcp ^
-H "Authorization: Bearer <access_token>" ^
-H "Content-Type: application/json" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":99,\"method\":\"$/cancelRequest\",\"params\":{\"requestId\":3,\"reason\":\"user aborted\"}}"
Connector UI values (tfGPT Desktop)
- type:
mcp - transport:
http - server_url:
http://127.0.0.1:8787/mcp
Установка Mock
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/it370/mock-mcpFAQ
Mock MCP бесплатный?
Да, Mock MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Mock?
Нет, Mock работает без API-ключей и переменных окружения.
Mock — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Mock в Claude Desktop, Claude Code или Cursor?
Открой Mock на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Mock with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
