MARS documentation
Rust librariesmars-server

mars-server

Registry HTTP server, authorization, durable storage, query planning, federation, and anchor outbox.

Registry HTTP server, authorization, durable storage, query planning, federation, and anchor outbox.

Use this crate to operate or embed the reference registry. The public router and store interfaces are implementation APIs, not guarantees of an already available hosted service.

Package contract

Workspace version: 0.1.0. Rust edition 2021, minimum declared toolchain 1.81, Apache-2.0 license. Protocol wire version stays 1.0.0.

Use the source checkout as the installation authority; package registry publication is not verified by this documentation build. In a consumer Cargo manifest, use an explicit path dependency to your checked-out crate.

[dependencies]
mars-server = { path = "../mars/mars-server" }

Feature flags

FeatureEnables
defaultpostgres, sigil
contractsmars-protocol/contracts, mars-protocol/sigil, dep:utoipa
sigilmars-protocol/sigil, dep:sigil-sdk
shardingdep:mars-shard, mars-protocol/sharding
postgresdep:sqlx-core, dep:sqlx-postgres
prodmars-protocol/prod
test-anchorMarker feature

Public root modules

anchor, api, auth, bond, config, contracts, discovery, error, federation, middleware, observability, production, search, store, validation. Conditional availability follows the source attributes.

Public module reference

ModuleSource
cratemars-server/src/lib.rs
anchormars-server/src/anchor/mod.rs
anchor::configmars-server/src/anchor/config.rs
anchor::sigilmars-server/src/anchor/sigil.rs
anchor::test_adaptermars-server/src/anchor/test_adapter.rs
apimars-server/src/api/mod.rs
api::restmars-server/src/api/rest.rs
api::websocketmars-server/src/api/websocket.rs
authmars-server/src/auth/mod.rs
auth::adaptersmars-server/src/auth/adapters/mod.rs
auth::adapters::siwsmars-server/src/auth/adapters/siws.rs
auth::challenge_storemars-server/src/auth/challenge_store.rs
auth::handlersmars-server/src/auth/handlers.rs
auth::principalmars-server/src/auth/principal.rs
auth::registrymars-server/src/auth/registry.rs
auth::session_storemars-server/src/auth/session_store.rs
bondmars-server/src/bond.rs
configmars-server/src/config.rs
contractsmars-server/src/contracts.rs
discoverymars-server/src/discovery/mod.rs
errormars-server/src/error.rs
federationmars-server/src/federation/mod.rs
federation::discoverymars-server/src/federation/discovery.rs
federation::envelopemars-server/src/federation/envelope.rs
federation::policymars-server/src/federation/policy.rs
federation::servicemars-server/src/federation/service.rs
federation::transportmars-server/src/federation/transport.rs
federation::workermars-server/src/federation/worker.rs
middlewaremars-server/src/middleware/mod.rs
middleware::authmars-server/src/middleware/auth.rs
observabilitymars-server/src/observability/mod.rs
productionmars-server/src/production.rs
searchmars-server/src/search.rs
storemars-server/src/store/mod.rs
store::memorymars-server/src/store/memory.rs
store::postgresmars-server/src/store/postgres.rs
store::sharded_memorymars-server/src/store/sharded_memory.rs
validationmars-server/src/validation/mod.rs
validation::resolvermars-server/src/validation/resolver.rs

API documentation boundary

The linked pages contain syntax-derived public declarations, method signatures, and documentation comments. They omit function bodies and constant values, and skip test-only modules. Compiler-resolved re-exports, trait resolution, and target availability require Rustdoc with the selected feature profile; no backend build or conformance tests ran here.

Three actual binaries cover server startup, contract generation/checks, and ledger verification. Production rejects mock/test anchor combinations.

On this page