# Sell to State Muse connector

From musedirectory.ai, the independent directory of Meta Muse connectors. Not affiliated with Meta.

## Sell to State

Search government tenders, contract awards, and supplier opportunities across 60+ countries.

- Record: https://musedirectory.ai/connector/sell-to-state
- Category: Shopping & Commerce
- Developer: Beton (https://www.selltostate.com/mcp/)
- Muse status: Extra setup. Not in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.
- Health: Working, 266ms, checked 2026-10-29T17:56:32Z
- Endpoint: https://app.selltostate.com/api/mcp
- Auth: No account needed; Pricing: unknown
- Screening: Screened, no issues found (2026-10-29T17:56:32Z)
- Source: Found in the official MCP Registry (com.selltostate/mcp) https://registry.modelcontextprotocol.io/v0/servers?search=com.selltostate%2Fmcp

Connects to official government tender and contract award data from 60+ countries. Muse can search tenders by country, agency, supplier, sector and amount; retrieve buyer and supplier details; and save searches and award lists for tracking opportunities.

Example request: "Show me all IT software contracts awarded by the Singapore government in the last 90 days over $100,000."

How to connect: Not in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use Sell to State to help me. It is a free service with an MCP server at https://app.selltostate.com/api/mcp. It does not need an API key. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Tools:
- whoami: Self-introspection: resolve the caller's identity + entitlement + granted scopes. Returns {subject, type, active, plan, scopes, export_cap}. Works even when inactive (active:false) so an agent can verify auth and decide whether to pay before doing work.
- search_awards: Search awarded tenders in one country (Postgres), largest amount first, stable paging. Every filter is a property of this schema; country omitted means singapore. A bad value or an unknown argument is an invalid-params error whose data lists every problem (errors[]). Returns {row
- get_supplier: All awards for one supplier (by display-name match).
- get_agency: All awards for one agency (by slug or display-name match).
- export: Export a filtered award set as CSV. country omitted means singapore. A bad country is an error, not a Singapore file.
- get_buyer: Buyer (agency) detail by slug: summary stats, yearly spend trend, sector breakdown, and top suppliers.
- get_buyer_detail: Alias of get_buyer (back-compat). Buyer (agency) detail by slug: summary stats, yearly spend trend, sector breakdown, and top suppliers.
- get_supplier_detail: Supplier detail by slug: summary stats, yearly awarded trend, sector breakdown, and top buyers.
- get_tender: Single tender (award) detail by numeric award_id OR public tender page id, with related awards (same tender / same buyer).
- get_sector: Sector detail by slug: summary stats, yearly trend, and active partners (kind=buyers|suppliers).
- search: Faceted full-text search over one collection (scope). Every filter is a property of this schema, the same params as REST GET /api/v1/search; values of a fixed list are matched in any case. A bad value or an unknown argument is an invalid-params error whose data lists every proble
- list_buyers: Top buyers (agencies) by total spend.
- list_suppliers: Top suppliers by total awarded.
- list_sectors: The curated sector taxonomy (slug + name).
- get_lists: List every saved award list the caller (x-api-key owner) can see. Each list has itemCount (tender items only), buyerCount, supplierCount and totalCount (all items). Requires a user API key.
- create_list: Create a new saved award list (personal). Body: name. Requires a user API key.
- get_list: One saved list with paginated items joined to award data (description/buyer/supplier/amount/date). Requires a user API key.
- rename_list: Rename a saved list. Body: id, name. Requires a user API key (creator or workspace owner).
- delete_list: Delete a saved list (and its items). Body: id. Requires a user API key (creator or workspace owner).
- add_to_list: Add a tender to a saved list. Body: id (list id) + tender_no OR award_id. Idempotent. Requires a user API key.
- remove_from_list: Remove a tender from a saved list. Body: id (list id) + tender_no. Requires a user API key.
- get_saved_searches: List every saved search the caller (x-api-key owner) can see (personal + shared workspace). Requires a user API key.
- save_search: Save a search under a name. Body: name, query (filter set), kind? ('atlas' → unified-search shape, else legacy Explorer filters). Requires a user API key.
- get_saved_search: One saved search by id (visible to the caller, else not_found). Requires a user API key.
- rename_saved_search: Rename a saved search. Body: id, name. Requires a user API key (creator or workspace owner).
- delete_saved_search: Delete a saved search. Body: id. Requires a user API key (creator or workspace owner).

Screening checks:
- MCP handshake: pass (Answered in 266ms)
- Domain against threat feeds (Cloudflare security DNS): pass (app.selltostate.com, selltostate.com not flagged)
- Published packages against the OSV malicious-package database: n/a (No npm or PyPI package published)
- Hidden instructions or invisible characters in tool text: pass (26 tools read, nothing found)
- Inputs asking for passwords, card numbers or seed phrases: pass (None found)
- Domain and redirects: pass (Domain registered 239 days ago)
- AI review of purpose and tool behavior: pass (No concerns)
