Packages
corex
0.1.0-rc.1
0.1.2
0.1.1
0.1.0
0.1.0-rc.1
0.1.0-rc.0
0.1.0-beta.5
0.1.0-beta.4
0.1.0-beta.3
0.1.0-beta.2
0.1.0-beta.1
0.1.0-alpha.33
0.1.0-alpha.32
0.1.0-alpha.31
0.1.0-alpha.30
0.1.0-alpha.29
0.1.0-alpha.28
0.1.0-alpha.27
0.1.0-alpha.26
0.1.0-alpha.25
0.1.0-alpha.24
0.1.0-alpha.23
0.1.0-alpha.22
0.1.0-alpha.21
0.1.0-alpha.20
0.1.0-alpha.19
0.1.0-alpha.18
0.1.0-alpha.17
0.1.0-alpha.16
0.1.0-alpha.15
0.1.0-alpha.14
0.1.0-alpha.13
0.1.0-alpha.12
0.1.0-alpha.11
0.1.0-alpha.10
0.1.0-alpha.9
0.1.0-alpha.8
0.1.0-alpha.7
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
Accessible and unstyled UI components library written in Elixir and TypeScript that integrates Zag.js state machines into the Phoenix Framework.
Current section
Files
Jump to
Current section
Files
usage-rules/mcp.md
# Corex MCP
Self-hosted read-only MCP. **Dev and test only — never production.**
## Phoenix mount
After `Plug.Static`, before code reloader in `endpoint.ex`:
```elixir
if Mix.env() == :dev do
plug Corex.MCP
end
```
URL: `http://localhost:4000/corex/mcp`
## Cursor
`.cursor/mcp.json`:
```json
{
"mcpServers": {
"corex": {
"url": "http://localhost:4000/corex/mcp"
}
}
}
```
## Claude Desktop
```json
{
"mcpServers": {
"corex": {
"transport": {
"type": "http",
"url": "http://localhost:4000/corex/mcp"
}
}
}
}
```
## Tools — call order
| Tool | When |
|------|------|
| `list_components` | First |
| `get_component` | Second — valid `id` only |
| `installation_guide` | Install questions — `scenario`: `new_project`, `existing_project`, `all` |
## Troubleshooting
| Issue | Fix |
|-------|-----|
| Connection refused | Start Phoenix (`mix phx.server`); check port |
| Tools empty | Verify `plug Corex.MCP` in dev endpoint |
| Stale metadata | Restart server after Corex upgrade |
| Verbose logging | `config :corex, debug: true` in dev |
## Tableau
Separate Bandit port — default `http://localhost:4004`. See https://hexdocs.pm/corex/tableau.html
## References
- https://hexdocs.pm/corex/MCP.html