nautilus-trader MCP server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nautilus-trader MCP serverHow do I subscribe to market data and place orders in a strategy?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nautilus-trader MCP server
What this is
An MCP (Model Context Protocol) server that gives an LLM (Claude Code, Codex CLI, etc.) two ways to look things up in nautilus_trader while writing strategy code against it:
Code search (
index.py) -- structural search over the actual source (Python + Rust), by symbol name. Not fuzzy-text/embedding search: it finds the real class/function/struct and returns its docstring or full source.Doc search (
rags/) -- semantic (embedding-based) search over the project's markdown docs (concepts, guides, tutorials), for "how do I..." questions that don't map to a single symbol name.
Related MCP server: MCPyDoc
How it works
index.pyspawns two real language servers as subprocesses and talks LSP (JSON-RPC over stdio) to them directly --pylspfor the Python source undernautilus_trader/python/nautilus_trader,rust-analyzerfor the Rust source undernautilus_trader/crates.documentSymbolfinds top-level classes/functions/structs/impls;hovergets the docstring (Python only -- see Known limitations). Results are cached to.code_index_cache.jsonsince building it costs ~25s (mostly rust-analyzer over ~2600 files).rags/rag_build.pychunks every file underdocs/and builds adspy.retrievers.Embeddingsindex (Gemini embeddings), saved torags/(config.json+corpus_embeddings.npy) plus ashape.jsonthat records the original folder structure sorags/search.pycan filter to a subfolder.mcp_server.pywires both into 5 MCP tools:search_code,get_code_doc,get_code_source,search_docs,show_doc_keys.
Setup
git clone https://github.com/GwangPyo/NautilusTraderMCP.git
cd NautilusTraderMCP
cp .env.example .env # fill in GEMINI_API_KEY (and OPENAI/ANTHROPIC if you use load_model)
./install.sh # conda env "mcp" + deps, nautilus_trader clone, code index, doc indexinstall.sh is idempotent: re-running it skips the nautilus_trader clone, the
docs/ copy, and the (paid) doc-embedding build if they already exist. Set
ENV_NAME=<name> to use a different conda env name (used for testing so it
doesn't touch the real mcp env).
An env manager isn't required -- uv venv && uv pip install -e . works too;
install.sh just standardizes on conda for a reproducible one-command setup.
Register with a client
./add_claude.sh # claude mcp add
./add_codex.sh # codex mcp addBoth just point the client at <conda mcp env>/bin/python3 mcp_server.py over stdio.
Known limitations / TODO
.code_index_cache.jsonandrags/{config.json,corpus_embeddings.npy,shape.json}have no invalidation -- ifnautilus_trader/ordocs/change, you have to delete the cache files by hand and re-run to pick it up.No automated tests -- everything so far has been verified by hand (fresh conda env, fresh uv env, real MCP client over stdio).
nautilus_trader/is cloned frommain(unpinned) -- can drift over time; nothing currently checks it against a known-good commit/tag.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Versioned documentation registry and semantic search for AI tools and coding assistants.
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Ask a codebase what calls what: search, blast radius, paths between symbols, and diffs.
Project memory, semantic code search, and grounded agent context.
Related MCP Servers
FlicenseNot gradedqualityDmaintenanceProvides AI coding agents with structured access to indexed codebases via semantic search, symbol analysis, and file reading tools.12-- AlicenseNot gradedqualityCmaintenanceProvides real-time access to Python package documentation, source code, and symbol search to prevent AI hallucinations.6MIT
- AlicenseNot gradedqualityDmaintenanceExposes type-aware code navigation and fast file search to AI agents via language servers, enabling definitions, references, symbols, and file lookup without reading entire codebases.1,374MIT
- AlicenseAqualityBmaintenanceEnables LLMs to efficiently navigate large codebases by providing surgical access to specific code symbols via semantic search and call-graph queries.6MIT