Skip to main content
Glama
irony

webhallen-mcp

by irony

webhallen-mcp

Webhallen과 상호작용하기 위한 MCP 서버입니다. 제품을 검색하고 공유 위시리스트(önskelistor)를 관리할 수 있습니다. 공용 사무실 쇼핑 목록용으로 설계되었습니다.

순수 HTTP 호출을 사용하므로(브라우저 의존성 없음) 백그라운드 에이전트에서도 작동합니다.

도구

도구

인증 필요

설명

login

-

사용자 이름/비밀번호로 로그인

search_products

-

키워드로 제품 검색(ID, 이름, 가격, 재고 반환)

get_product

-

ID로 특정 제품의 상세 정보 가져오기

list_wishlists

모든 위시리스트와 그 내용 나열

get_wishlist

특정 위시리스트의 내용 가져오기

create_wishlist

새 위시리스트 만들기(예: "Kontoret Inköpslista")

add_to_wishlist

위시리스트에 제품 추가

delete_wishlist

위시리스트 삭제

Related MCP server: Bring! Shopping MCP Server

인증

두 가지 옵션:

옵션 A: 환경 변수(백그라운드 에이전트에 권장)

WEBHALLEN_USERNAMEWEBHALLEN_PASSWORD를 설정하세요. 서버는 첫 번째 인증 요청 시 자동으로 로그인합니다.

옵션 B: 로그인 도구

login 도구를 사용자 이름과 비밀번호로 호출하세요. 세션은 서버가 실행되는 동안 메모리에 유지됩니다.

옵션 C: 기존 세션 쿠키

브라우저 세션에서 추출한 webhallen_session=... 쿠키 값을 WEBHALLEN_COOKIES로 설정하세요. 이미 유효한 세션이 있고 자격 증명 전송을 피하고 싶다면 이 옵션을 사용하세요.

검색은 인증 없이 작동합니다. 위시리스트 작업에는 인증이 필요합니다.

설치

빌드

cd webhallen-mcp
npm install
npm run build

opencode에서 구성

opencode.json에 다음을 추가하세요:

{
  "mcp": {
    "webhallen": {
      "command": "node",
      "args": ["/path/to/webhallen-mcp/dist/index.js"],
      "env": {
        "WEBHALLEN_USERNAME": "your_username",
        "WEBHALLEN_PASSWORD": "your_password"
      }
    }
  }
}

사용되는 API 엔드포인트

엔드포인트

메서드

인증

용도

/api/login

POST

-

사용자 이름/비밀번호로 인증

/api/me

GET

현재 사용자 정보

/api/productdiscovery/autocomplete/{query}

GET

-

제품 검색

/api/productdiscovery/category/{id}

GET

-

카테고리별 탐색

/api/wishlist

GET

모든 위시리스트 나열

/api/wishlist

POST

위시리스트 만들기

/api/wishlist/{id}

PUT

위시리스트에 제품 추가

/api/wishlist/{id}

DELETE

위시리스트 삭제

사용 예시

에이전트에게 요청하세요:

  • "Webhallen에서 Nintendo Switch 2 검색"

  • "Kontoret Inköpslista라는 이름의 위시리스트 만들기"

  • "위시리스트에 제품 378404 추가"

  • "모든 위시리스트 표시"

Available Tools

8 tools
add_to_wishlistA

Add a product to a Webhallen wishlist. Use search_products first if you need the product ID. Use create_wishlist first if the list doesn't exist yet.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoIf wishlist doesn't exist, create one with this name
productIdYesProduct ID to add
wishlistIdNoWishlist ID

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses the basic add action and prerequisite workflow, but it does not mention authentication requirements, duplicate behavior, whether the tool can auto-create a wishlist, or what happens if wishlistId is omitted. The internal contradiction between the description and the schema's name parameter further reduces transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. The core action is front-loaded, and the prerequisite guidance follows naturally. It is concise without being under-specified in structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write operation with no annotations and no output schema, the agent needs more information about auth, how to choose between wishlistId and name, and duplicate handling. The description mentions key prerequisite tools but leaves the auto-create ambiguity unresolved, so it is not complete enough for confident invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds useful practical context for productId by pointing to search_products, but it does not clarify the relationship between wishlistId and name, leaving the schema to carry most parameter meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: add a product to a Webhallen wishlist. It is clearly distinguished from sibling tools like create_wishlist, delete_wishlist, and list_wishlists because the action is item-level addition rather than list management.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly names two sibling tools and their preconditions: use search_products to get the product ID and use create_wishlist if the list does not exist. However, the input schema's name parameter says 'If wishlist doesn't exist, create one with this name,' which slightly conflicts with the instruction to use create_wishlist first, muddying when this tool should create versus only add.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_wishlistA

Create a new Webhallen wishlist (önskelista). Use this to create a shared shopping list for the office.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName for the wishlist

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions creating a wishlist and an office use case, but does not disclose required authentication, ownership, visibility/sharing behavior, or what happens after creation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences with no filler. The main action is front-loaded, and the use case is stated immediately afterward.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one documented parameter, but the absence of annotations and an output schema leaves gaps around whether login is required and what the response will contain. These are relevant for a create operation, so the description is only minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the single parameter 'name' is already described in the schema as 'Name for the wishlist'. The tool description adds no additional parameter semantics, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Create a new Webhallen wishlist') and even includes the Swedish term 'önskelista' for clarity. This distinguishes it from sibling tools like list_wishlists, get_wishlist, add_to_wishlist, and delete_wishlist.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'Use this to create a shared shopping list for the office' gives a clear use case and context. It does not explicitly mention alternatives or exclusions, such as 'use add_to_wishlist to add items', so it falls just short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_wishlistA

Delete a Webhallen wishlist and all its contents.

ParametersJSON Schema
NameRequiredDescriptionDefault
wishlistIdYesWishlist ID

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of disclosing destructive behavior. It does so clearly by warning that the wishlist and all its contents will be deleted, which is a meaningful behavioral disclosure beyond the bare word 'delete'.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no redundant wording. Every word adds value by specifying the action, the resource, and the destructive scope.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple one-parameter destructive tool with no output schema, the description sufficiently communicates the core behavior and scope. It does not discuss error cases or permissions, but these are less critical given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the schema already documents wishlistId as a number. The description adds no new parameter semantics, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Delete', the resource 'Webhallen wishlist', and the scope 'all its contents', making it immediately distinguishable from siblings like list_wishlists, create_wishlist, and add_to_wishlist.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance about when to use this tool versus alternatives, no prerequisites, and no exclusion criteria. It relies entirely on the tool name and an implicit interpretation of 'Delete'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_productA

Get details about a specific Webhallen product by ID. Useful for verifying product info before adding to a shared wishlist.

ParametersJSON Schema
NameRequiredDescriptionDefault
productIdYesWebhallen product ID

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The verb 'Get' makes the read-only nature evident, and the second sentence clarifies that the result provides product information for verification. It does not discuss error behavior or authentication, but for a simple single-ID lookup the essential behavioral contract is clear.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler. The core action and scope are front-loaded, and the second sentence adds a practical usage context that helps an agent decide when to invoke the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read tool with a fully described schema, this description provides enough context to call it correctly. It is slightly incomplete because there is no output schema and no note about failure behavior or returned data shape, but the simplicity of the operation limits the impact.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers the only parameter, productId, with a description already. The tool description only repeats the 'by ID' concept and adds no new semantic detail such as format, constraints, or source information, so it stays at the baseline for full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: 'Get details about a specific Webhallen product by ID.' It is clearly distinguishable from the sibling search_products, which is about discovering products rather than retrieving one exact product by ID.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete use case: verifying product info before adding to a shared wishlist. It does not explicitly say when not to use it or name alternatives, but the context is clear enough for an agent to select this tool appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_wishlistA

Get the contents of a specific wishlist by ID. Shows all products in the shared shopping list.

ParametersJSON Schema
NameRequiredDescriptionDefault
wishlistIdYesWishlist ID

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the behavioral disclosure burden. It communicates read-only intent and that all products are returned, but it does not cover error behavior, permissions, pagination, or response structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no fluff. The core action and target are front-loaded, and the second sentence adds useful output context. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read operation, the description is adequate for understanding what the tool does and what it returns. However, with no output schema and no annotations, details like return format, failure behavior, and required auth are missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the description adds no additional parameter meaning beyond what the schema already provides. The schema already documents wishlistId as 'Wishlist ID'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Get'), a clear resource ('specific wishlist'), and the retrieval key ('by ID'), and clarifies output ('contents...all products'). This distinguishes it from siblings like list_wishlists and get_product.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'by ID' phrasing implies this is for retrieving one known wishlist rather than enumerating wishlists, but it does not explicitly state when to prefer this over list_wishlists or other siblings. No exclusion or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_wishlistsA

List all your Webhallen wishlists (önskelistor) with their IDs and contents. This shows the shared shopping lists.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It communicates a read-only listing operation and promises IDs/contents, but it does not disclose login requirements, empty-result behavior, or what 'shared' means for visibility and access. This is not ideal but is adequate for a simple list operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The first sentence is concise and informative. The second sentence, 'This shows the shared shopping lists,' is largely redundant with the first and introduces ambiguity about whether the lists are personal or shared, so not every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless listing tool with no output schema, the description is nearly complete: it names the resources, the scope ('all'), and the important returned fields (IDs and contents). The main soft spot is the unresolved 'shared shopping lists' phrasing and the lack of an explicit authentication note, but overall the description is sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%, so there is no parameter burden on the description. With 0 parameters, the baseline is 4; no parameter information is missing or unclear.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('List'), resource ('all your Webhallen wishlists'), and the returned data ('IDs and contents'). The qualifier 'all' clearly distinguishes it from get_wishlist, which presumably targets a single wishlist.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended usage is implied: use this tool when you need the full set of wishlists rather than one specific list. However, it does not explicitly name get_wishlist as the single-list alternative or state when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

loginA

Log in to Webhallen with username and password. Required before using wishlist tools. Alternatively set WEBHALLEN_USERNAME and WEBHALLEN_PASSWORD env vars.

ParametersJSON Schema
NameRequiredDescriptionDefault
passwordYesWebhallen password
usernameYesWebhallen username or email

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden, but it only states the action and prerequisite. It does not disclose session/credential behavior, side effects, failure modes, or how the env-var alternative interacts with a login call.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences front-load the purpose, then add the prerequisite and the env-var alternative with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter auth tool, the description covers what it does, when it is needed, and an alternative setup. It omits response/error behavior, but no output schema exists and the usage context is otherwise clear enough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the parameter descriptions already document both username and password. The tool description adds no additional parameter-level context beyond restating that login uses them, keeping this at baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Log in') and resource ('Webhallen'), and clearly frames it as an authentication step distinct from the sibling wishlist/product tools. An agent can immediately tell this is the auth gate, not a data operation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says this is required before using wishlist tools and offers an alternative (setting environment variables) that avoids the call. It does not enumerate when-not-to-use cases beyond the env-var alternative, but the auth context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_productsA

Search for products on Webhallen by keyword. Returns product list with IDs, names, prices, and stock info. Use the product IDs with add_to_wishlist. Does not require login.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (default 1)
queryYesSearch query
categoryIdNoOptional category ID to search within

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry behavioral disclosure. It does disclose the returned fields and that login is not required, which is useful. However, it doesn't mention pagination behavior, result limits, or that this is a read-only operation, leaving some behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, each earning its place: what the tool does, what it returns, and what to do with the results. The most important facts are front-loaded and there is no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given three parameters, no output schema, and no annotations, the description is fairly complete. It explains return values, the workflow with add_to_wishlist, and authentication. Minor omissions like pagination limits or default category behavior prevent a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description confirms 'query' means keyword and adds the purpose of the returned product IDs, but it doesn't add significant new meaning to 'page' or 'categoryId' beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Search'), a resource ('products on Webhallen'), and the result shape ('product list with IDs, names, prices, and stock info'). This clearly differentiates it from the sibling get_product, which implies fetching a single product, and from wishlist operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context: search by keyword to get product IDs for use with add_to_wishlist, and notes that no login is required. It doesn't explicitly list when not to use the tool, but the purpose is sufficiently scoped that an agent can infer the intended trigger.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.8/5.0
Disambiguation4/5

Most tools are clearly separated by resource and action: product search/detail, wishlist lifecycle, and auth. The only real ambiguity is list_wishlists versus get_wishlist, since both return wishlist contents, though one is all lists and the other is a specific list; the descriptions mostly clarify this.

Naming Consistency4/5

All tool names use lowercase snake_case with a verb-first style. Product and wishlist CRUD tools follow a verb_noun pattern, while login and add_to_wishlist are minor deviations but still clear and predictable.

Tool Count5/5

8 tools is well-scoped for a Webhallen wishlist integration: auth, product lookup, and wishlist CRUD each have a clear place. There is no unnecessary duplication or bloat.

Completeness3/5

The surface covers login, product search/detail, and create/get/list/delete wishlists, with add_to_wishlist for populating a list. However, there is no remove_from_wishlist or update wishlist metadata, so agents cannot correct mistakes or rename lists—a notable lifecycle gap.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    C
    maintenance
    Enables AI assistants to interact with Mathem.se, a Swedish online grocery store, allowing users to search for ingredients, add items to their shopping basket, and manage recipes through natural language.
    4
    2
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables agentic grocery shopping on Oda (Norway) and Mathem (Sweden) platforms through an MCP-compatible interface. Users can search for products, manage their shopping cart, and access order history using natural language commands.
    1

Latest Blog Posts

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/irony/webhallen-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server