Sometimes you have a URL path, sometimes a Chinese interface name, and sometimes just a link someone pasted in chat — and each of those wants a different lookup. Splitting them into separate tools means the client picks correctly rather than fuzzy-matching a URL. The cache is per process, so after a colleague publishes a change, `sync_nei_project` is the thing to reach for before assuming the definition is wrong.
A FastMCP server for the NEI interface-management platform, aimed at the moment you are writing code against a backend contract and need to find the right definition. It pulls the project's data once, keeps it in memory for the life of the process, and offers three different ways of searching it plus a manual refresh for when a colleague has just changed something.
- `search_interfaces_by_uri` matches loosely on the interface path
- `search_interfaces_by_name` matches loosely on the interface name
- `search_interfaces_by_url` resolves a NEI detail link exactly, using its `pid` and `id` — so pasting a link from a colleague finds the interface
- `search_groups_by_name` finds the business groups a project is divided into
- `sync_nei_project` forces a pull from the remote platform and refreshes the cache, for when a definition changed minutes ago
- In-memory caching, so repeat lookups within one session do not hit the NEI server again
Two environment variables: `SERVER_URL` for your NEI instance and `PROJECT_ID` for the project you are working in. Run it through `npx` from the published `@leila329/nei-mcp-server` package, or point at the source with `tsx` during development. Package `@leila329/nei-mcp-server`, version 0.0.17. Node.js v20 or higher is recommended. This assumes your team already runs NEI — it is not useful without one.
One command plus a key — npx -y @leila329/nei-mcp-server, then supply credentials
