siret-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@siret-mcpSearch for software companies in Paris with over 20 employees."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
siret-mcp
MCP server for French company registry data. Ask about any French company by name, SIREN or SIRET and get back clean JSON — with every registry code already translated into plain French.
The official registry hands you "nature_juridique": "5710", "activite_principale": "62.01Z", "tranche_effectif_salarie": "12". An LLM handed that either guesses or hallucinates. This server hands it "Société par actions simplifiée (SAS)", "Programmation informatique", "20 à 49 salariés" — with the original code alongside so the answer stays checkable.
No API key. No account.
Install
Claude Code
claude mcp add siret -- npx -y siret-mcpCursor — ~/.cursor/mcp.json:
{
"mcpServers": {
"siret": {
"command": "npx",
"args": ["-y", "siret-mcp"]
}
}
}Claude Desktop — claude_desktop_config.json, same block as Cursor.
Restart the client. You should see four tools.
Related MCP server: INSEE MCP Server
Try these
"Is SIREN 552100554 still active, and what legal form is it?"
"Find software companies in Loire-Atlantique with more than 20 employees."
"What does NAF code 43.22A mean?"
"Here's a SIRET from an invoice: 55210055400015 — verify it and tell me the registered address."
"List every establishment for this SIREN and flag which is the head office."
Tools
Tool | What it does |
| Fuzzy search by name, trade name, acronym or officer. Filters: département, postal code, NAF code, active-only. Returns compact summaries. |
| Full profile from a SIREN (9 digits) or SIRET (14). Validates the Luhn checksum before spending a request. |
| All known sites for a SIREN, head office first, with a |
| Decodes NAF / legal form / workforce bracket / status. Offline, no API call. |
Plus a siret://health resource exposing cache stats.
Design decisions worth knowing
Codes always travel with labels. Every coded field returns {code, label, exact, source}. exact: false means the label came from a fallback (a NAF section rather than the precise class), so a model can hedge appropriately instead of stating a guess as fact.
Absent fields are named, not nulled. Each profile carries a missing array. Given "workforce": null, a model will often invent a headcount. Given "missing": ["workforce"], it says the registry doesn't hold it.
Errors are returned, not thrown. Failures come back as JSON with a hint, so the model can retry or reformulate rather than dying mid-conversation.
Caching is the product, not an optimisation. The upstream rate-limits bursts. A 6h TTL cache (SIRENE_CACHE_TTL_MS) is what makes this usable in an agent loop that asks about the same company nine times.
Four tools, not twelve. Every extra tool costs the calling model context and adds a way for it to pick wrong.
Limitations
Code tables are partial. Full NAF rev. 2 is ~732 codes and catégorie juridique ~300; this ships the common ones plus a fallback that flags itself as approximate (
exact: false).Backed by
recherche-entreprises.api.gouv.fr, not INSEE Sirene v3. No API key means this runs immediately. The trade-off is fewer fields and no exhaustive establishment listing.Cache is in-process. Fine for a local stdio server, wrong for a hosted multi-tenant one.
Data & attribution
Data comes from the API Recherche d'Entreprises (DINUM), derived from INSEE SIRENE, under Licence Ouverte. Officer records may include a birth year. You are responsible for using the data lawfully.
Development
git clone https://github.com/tbellicha/siret-mcp.git
cd siret-mcp
npm install
npm run build
npm test # node:test, offline
npm run test:live # hits the real API
npm run typecheckLicence
MIT © 2026 tbellicha
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityFmaintenanceEnables interaction with the French business search API from data.gouv.fr, allowing users to search for French companies by text or geographical criteria and access essential business information.21920MIT
- FlicenseBqualityDmaintenanceEnables searching companies in the SIRENE database using SIREN, SIRET, or company name via the INSEE API.1
- FlicenseNot gradedqualityBmaintenanceEnables querying French business registers (RNE, BODACC) and trademarks via INPI APIs. Provides tools to search companies, retrieve legal status, directors, beneficial owners, collective procedures, and trademark details.
- FlicenseNot gradedqualityDmaintenanceEnables searching for French companies using the official data.gouv.fr API, with filters for name, location, activity, and certifications.1
Related MCP Connectors
French Companies MCP — recherche-entreprises.api.gouv.fr
OpenCorporates MCP — Global company registry data (free, no auth, rate limited)
Company, KYB, VAT, sanctions, LEI and address data for 15 EU countries.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tbellicha/siret-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server