About MOFi
MOFi is a local MCP server for querying MOF survey metadata and connecting clients to a configured MOFi scientific workspace. Researchers can inspect a bundled catalog independently, while workspace tools reuse the hub’s validation and execution controls.
Key features
- 01MOF database catalog and queries
- 02Bundled survey metadata CSV
- 03Optional scientific workspace tools
- 04Hub schemas and validation
- 05Budget and evidence-ledger reuse
Use cases
- 01Inspect MOF survey metadata
- 02Find entries matching a name
- 03Connect clients to configured scientific tools
MCP support
Exposes catalog tools and the `mofi://catalog` resource to MCP clients. With a configured workspace, it advertises available hub tools through the local server.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
2Saved tool list · updated 5d ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| method | enum | Yes | Keep databases whose source methods include this normalized method, or null.calculated | dft | experimental | gcmc | geometric | md | ml | multi-modal | simulation | text | null |
| identifier | enum | Yes | Keep databases that index entries by this identifier scheme, or null.CIF | DOE-ID | DOI | Drug | MOFid | MOFkey | NIST-ID | Polymer | Pseudo-ID | Reaction | Recipe | Refcode | SMILES | Text | Topos-ID | null |
| name_contains | string|null | Yes | Case-insensitive substring of the database name, or null. |
| required_fields | array|null | Yes | Coverage flags that must all be Y, or null. |
| usable_link_only | boolean|null | Yes | true keeps only rows whose link is a complete DOI or a website; null or false keeps all. |
| data_type_contains | string|null | Yes | Case-insensitive substring of the data type column (for example 'Ads', 'Synth', 'Stability'), or null. |
Details
From the project READMEMOFi tools
mofi-tools provides a local Model Context Protocol server for MOFi's bounded
scientific tools. The unrelated PyPI package named mofi is not this project.
Install from PyPI
python -m pip install mofi-tools==0.1.0
mofi-tools catalog
mofi-mcp
With uv, run the stdio server using uvx --from mofi-tools==0.1.0 mofi-tools serve.
The public MCP Registry identity is io.github.harrisonmo/mofi; its package
metadata is maintained in the repository's server.json.
Install from source
Python 3.12 or newer is required:
python -m pip install ./packages/mofi-tools
mofi-tools catalog
mofi-tools query --arguments '{"name_contains":"QMOF"}'
mofi-mcp
The standalone profile provides mof_database_catalog, mofi_tool_catalog, and
the mofi://catalog resource. It bundles the byte-pinned CSV and reviewed sidecar.
The table is unverified survey metadata, not MOF structures or reference labels.
No model login, model call, engine installation or GPU is needed for this profile.
Scientific workspace
Point the installed server at a separately prepared MOFi source checkout:
mofi-mcp --workspace /path/to/MOFi \
--science-python /path/to/science-environment/bin/python \
--hub-config configs/science-hub.json --session runs/mcp-client
Only configured and available hub tools are advertised. The adapter reuses the hub's schemas, scientific validation, scheduler, budget reservations and evidence ledgers. The science interpreter needs the workspace's scientific dependencies; Crystal-Builder, ARIA and external engines are not bundled in this package. Give each client a separate session directory. Tool calls may run calculations within the operator's configured budget; catalog inspection makes no model calls.
Standard output carries MCP messages only. Diagnostics and engine output use standard error. Native jobs keep the hub's existing interruption accounting; a client timeout does not prove that a calculation stopped or refund its budget.
See MCP setup and packaging for Codex, Claude Code, Claude Desktop, building and release steps.
Original code uses Apache-2.0; see LICENSE and NOTICE. Scientific dependencies retain their own licenses. No credentials, model weights, engine binaries, development records or scientific run output are part of the distribution.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.