ERP Partner Finder
Server Details
Search, compare and shortlist Odoo partners in Germany, Austria and Switzerland.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- KnowlixGmbH/erppartnerfinder-mcp
- GitHub Stars
- 0
TDQS
Scored across 5 tools
Each tool has a distinct role: directory_stats for aggregates, get_partner for one profile, search_partners for filtered/ranked discovery, match_partners for questionnaire-driven shortlists, prepare_request for handoff. The only mild overlap is search_partners vs match_partners, since both return partner lists, but the descriptions distinguish filter-based vs rule-based selection.
All names use consistent snake_case and are readable (get_partner, match_partners, prepare_request, search_partners). directory_stats breaks the verb_noun pattern with a noun-first form, a minor deviation from the otherwise consistent convention.
Five tools is slightly lean but well-scoped for a partner-finding service, covering discovery, profile lookup, statistics, matching and request preparation. No obvious redundancy or filler tools.
The surface covers the full read-only workflow from browsing stats and searching, through retrieving a profile and matching, to preparing a contact request. Minor gaps exist (no explicit enumeration of available countries, tiers, or specialisms as standalone reference tools), but agents can work around them via search filters.
Available Tools
5 toolsdirectory_statsOdoo partner statistics for DACHBInspect
Aggregate figures: partners per country and tier, medians per tier, pricing transparency, AI-assisted delivery, cities and app specialisms with the most partners.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. "Aggregate figures" implies a non-mutating read over existing partner data, which is useful implicit context, and the metric list indicates the return content. However, nothing is said about permissions, data freshness, caching, or cost of the aggregation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence, front-loaded with the core noun phrase "Aggregate figures:" followed by a scannable list of the aggregated dimensions. No filler, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no parameters, the description is the only spec, and it only gestures at the metrics (e.g. "pricing transparency", "AI-assisted delivery") without defining what those aggregate values are or whether grouping/filtering is possible. It is enough to identify the tool but thin for interpreting results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for 0-param tools applies. The enumerated metrics give the agent a rough sense of the shape of the result, though no input surface exists to clarify.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Aggregate figures: partners per country and tier, medians per tier..." identifies a clear resource (aggregate partner statistics) and enumerates the dimensions it covers, which distinguishes it from the sibling lookup/search/match tools. It never states a verb like "returns" or "computes", but the intent is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus get_partner, match_partners, or search_partners. The description only lists the metrics produced, leaving the agent to infer that this is the right tool when summary numbers (not individual records) are needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_partnerGet an Odoo partner profileBInspect
Full profile of one partner: odoo.com figures (tier, references by industry, certified experts, project sizes, retention) and facts from the partner's own website (services, specialisms, prices, AI-assisted delivery, hosting, languages).
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Partner slug from search_partners |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses what the payload contains (tier, references, certifications, pricing, hosting, languages), which is genuinely informative, but says nothing about read-only nature, authentication, rate limits, or not-found behavior for an unknown slug. Adequate for a read lookup but with clear gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the resource is named first and the field list follows. The parenthetical inventory is dense but every item conveys returned content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by enumerating the profile's contents. It omits error behavior for invalid slugs and any usage context, but for a one-param read tool the return-value coverage is the main obligation and it is met.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and there is only one parameter, so the schema fully documents 'slug' as a string sourced from search_partners. The description adds no format or lookup semantics beyond that, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Full profile of one partner') and enumerates the two data sources the profile draws on, so the agent knows this is a single-entity detail fetch. It does not explicitly contrast with siblings like match_partners or search_partners, but the singular 'one partner' scope makes the distinction inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description contains no when-to-use guidance, no prerequisites, and no mention of alternatives. The only workflow hint ('Partner slug from search_partners') lives in the schema, not the description, so the description itself provides no routing help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
match_partnersMatch partners to a projectAInspect
Rule-based shortlist (up to 5) for a buyer's project, with the reasons for each match — the same published matching rules as the questionnaire on erppartnerfinder.com. Read-only: nothing is sent to any partner. To let the buyer contact partners, call prepare_request.
| Name | Required | Description | Default |
|---|---|---|---|
| apps | No | ||
| users | Yes | Planned Odoo users | |
| country | Yes | ||
| industry | Yes | ||
| employees | Yes | ||
| languages | No | ||
| situation | Yes | ||
| ai_assisted_delivery | No | none |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden; it prominently discloses read-only behavior, that nothing is sent to partners, the cap of 5 results, and that match reasons are returned. It does not cover determinism, rate limits, or error behavior, so it is strong but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, with the core output shape front-loaded and the routing hint last. No filler or restatement of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-output-schema, no-annotation tool with 8 inputs, the description covers the output and safety profile well but leaves the input contract largely unexplained. An agent can pick the tool, yet must infer parameter meaning entirely from the enum lists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 13% across 8 parameters, so the description must compensate and adds essentially nothing about inputs. Enum values are largely self-describing (country, industry, employees, situation), but there is no explanation of how any input shapes the matching, nor of optional filters like apps, languages, or ai_assisted_delivery.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource+output shape: a rule-based shortlist of up to 5 partners for a buyer's project, with reasons. It also names a sibling (prepare_request) for the adjacent contact action, letting an agent distinguish it from search_partners and prepare_request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly frames the tool's role ('read-only, nothing sent') and routes to prepare_request when the buyer needs to contact partners. It lacks an explicit exclusion against search_partners/directory_stats, so it stops short of full when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_requestPrepare a partner request for the buyerAInspect
Saves the buyer's project answers (no personal data) and returns a link to erppartnerfinder.com where the buyer reviews the answers, adds their own contact details, confirms their email and chooses which partners receive the request. Nothing is sent to partners and no email is sent by this tool. Give the link to the buyer; it is valid for 30 days. Optionally name one partner the buyer asked about (it is then always shown and preselected).
| Name | Required | Description | Default |
|---|---|---|---|
| apps | No | ||
| users | Yes | Planned Odoo users | |
| country | Yes | ||
| industry | Yes | ||
| language | No | Language of the page the buyer will see | en |
| timeline | No | ||
| employees | Yes | ||
| languages | No | ||
| situation | Yes | ||
| partner_slug | No | A partner the buyer specifically wants to contact (slug from search_partners) | |
| ai_assisted_delivery | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so explicitly: no personal data is saved, nothing is sent to partners, no email is sent by this tool, and the returned link expires in 30 days. It also discloses the preselection side effect of naming a partner. Minor gap: no statement about idempotency or what happens on repeated calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core action and return value, then side-effect disclaimers and the optional partner behavior. Dense but every clause carries information an agent needs; no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the return value (a link), its validity, the side-effect profile, and the optional partner parameter, which is sufficient given no output schema exists. It is slightly thin on the semantics of the non-required qualification fields and on repeat-call behavior, but nothing critical to correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 27% (users, language, partner_slug), so the description should compensate more. It does add real meaning for partner_slug (named partner is always shown and preselected), but apps, timeline, situation, employees, languages and ai_assisted_delivery are left to their enum values with no interpretive guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource — saves the buyer's project answers and returns a review link — and clarifies the two-step handoff model (buyer adds contact details and confirms email on the site). An agent can distinguish this from match_partners/search_partners, which discover partners rather than prepare a request.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage context: give the link to the buyer, it is valid for 30 days, and partner_slug is optional. It does not explicitly state when to prefer this over match_partners or that search_partners should be called first to obtain a slug (that hint lives only in the schema). Clear context, but no explicit alternatives/exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_partnersSearch Odoo partnersAInspect
Search the Odoo implementation partners in Germany, Austria and Switzerland, ranked by a published formula (tier, references, certified experts, retention). Filter by country, city, tier, app specialism or industry focus.
| Name | Required | Description | Default |
|---|---|---|---|
| app | No | Odoo app the partner highlights as a specialism | |
| city | No | City name, e.g. München, Munich, Wien, Zürich | |
| tier | No | ||
| limit | No | ||
| query | No | Text in the partner name or summary | |
| country | No | ||
| industry | No | Industry the partner states as a focus |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that results are ranked by a published formula (tier, references, certified experts, retention) and tightly scoped to three countries, but says nothing about result shape, paging behaviour, or why results might be missing for a given city/tier combination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the core action and scope, then the filter surface. Every clause carries information; the only slight inefficiency is that the ranking-factor parenthetical is dense but still earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only search with no annotations and no output schema, the description covers scope, ordering, and filter axes well enough to call the tool correctly. It stops short of describing what a returned partner record contains, which is the main residual gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 57%, so the description has to carry extra weight. It maps several filters to semantics (country, city, tier, app specialism, industry focus) and clarifies that 'app specialism' corresponds to the app parameter, but free-text query and limit behaviour are left entirely to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb and resource (search Odoo implementation partners) and adds geographic scope (Germany, Austria, Switzerland) plus the ranking basis. It never mentions sibling tools like match_partners or get_partner, so an agent gets no explicit demarcation, though the search-and-filter framing is itself distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The list of filter dimensions implies this is the tool for filtered browsing of the partner directory, which is adequate usage guidance. However, there is no explicit when-to-use or when-not-to-use statement, and the very similar sibling match_partners is neither named nor contrasted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
directory_stats - First observed
get_partner - First observed
match_partners - First observed
prepare_request - First observed
search_partners
Related MCP Connectors
B2B company address data for the DACH region: search 6,400+ industry lists and get price quotes.
XRechnung and ZUGFeRD e-invoicing (EN 16931): create, validate, check Leitweg-IDs, German VAT.
Verify ZUGFeRD/Factur-X e-invoices, convert PDF invoices to ZUGFeRD, check VAT IDs and Peppol.
- NumezisOAuthcom.numezis
Swiss SME back office: accounting, VAT, QR-bill invoicing, supplier bills, CRM, HR and payroll.
Related MCP Servers
- AlicenseAqualityBmaintenanceB2B company address data for the DACH region: search 6,400+ industry lists, check record counts and field coverage, get binding price quotes with a direct order link. Remote MCP server on Cloudflare Workers, no auth required.51MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants like Claude, ChatGPT, and Copilot to connect to Odoo ERP, providing tools to search, read, create, and update any Odoo model such as partners, sales orders, invoices, and products.13 npmAGPL 3.0
- AlicenseNot gradedqualityBmaintenanceSales intelligence for DACH & EU SMEs — lead scoring, ICP fit, CRM enrichment & writeback.MIT
- AlicenseAqualityBmaintenanceEnables searching the Swiss commercial register, retrieving company and SOGC publication data, and validating Swiss UID and VAT numbers via the Zefix REST API and UID Webservice, including combined due-diligence reports.9MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.