The tools in Placepoint AI
This page lists each tool in Placepoint MCP and Placepoint Dataset MCP. For each one you see what it does and an example of a question it answers. Use this overview when you choose tools in an agent, for example in Microsoft Copilot Studio, where an agent can have at most 128 tools.
Leave get_usage_guide and get_tool_help on in both servers. Also leave get_mcp_context on in Placepoint Dataset MCP. These tools tell the agent how to use the other tools. The agent uses tools without an example along the way, as part of other tasks.
Placepoint MCP
Address: https://mcp.placepoint.no. 100 tools.
Property search and lookup
| Tool | What it does | Example |
|---|---|---|
search | Searches for properties by address, matrikkel number (cadastral number), owner, tenant or plan, and filters on all attributes. | "Find commercial properties in Bergen with more than 5,000 m² UFA." |
count | Counts properties that match a filter, without fetching them. | "How many residential properties in Trondheim have a lift?" |
get_document | Fetches everything we have about one property: owners, tenants, buildings, parcels, addresses and plan. | "What do you know about 0301-208-494-0-0?" |
aggregate | Groups properties by an attribute and counts or sums per group. | "How many commercial properties does each municipality in Akershus have?" |
exact_sum | Gives an exact sum of a numeric value for all properties that match a filter. | "What is the total UFA of office buildings in Oslo?" |
nested_aggregate | Counts and sums across buildings, owners, tenants and the other lists inside the properties. | "How many buildings in Stavanger were built before 1950, broken down by building type?" |
nested_select | Lists buildings, owners, tenants and similar one by one, when they match a filter. | "Show all buildings over 10,000 m² in Drammen with year of construction." |
nested_top_n | Finds the largest or newest buildings, ownership changes and similar across the whole country. | "Which ten buildings in Norway have the largest UFA?" |
distinct_values | Shows which values a field has, with a count for each. | "Which building types exist in Tromsø, and how many of each?" |
geo_search | Finds properties within a radius, a rectangle or an area on the map. | "Which properties are within 500 metres of Oslo S?" |
geo_aggregate | Groups many properties into clusters on a grid, for maps of where they are. | "Show where the warehouse buildings in Akershus are, grouped in clusters." |
export | Creates an Excel, CSV or GeoJSON file with the properties that match a filter. | "Create an Excel sheet with all office properties in Bergen city centre." |
list_indexes | Shows which data you can search: properties and companies. | "What data can you search?" |
get_index_schema | Shows which fields the property and company data have. | "What information is there about buildings?" |
get_nested_schema | Shows the fields in one list inside the properties, for example buildings or owners. | "What fields does the owner list have?" |
find_field | Finds the technical field name for an everyday word, so the filters are correct. Always leave it on. | "Which field says whether the building has a lift?" |
list_presets | Shows the quick filters from the property search in Placepoint Fusion and what each one does. Always leave it on. | "Which quick filters are there for zoning?" |
list_filter_options | Shows valid codes and names for a field, for example property type or building type. | "Which building types can I filter on?" |
get_company_portfolio | Lists the properties a company owns directly, with a summary. | "Which properties does Statsbygg own directly?" |
get_usage_guide | The usage guide that tells the agent how to use the other tools. Always leave it on. | |
get_tool_help | Detailed help for individual tools, which the agent fetches when needed. Always leave it on. |
Addresses and places
| Tool | What it does | Example |
|---|---|---|
search_cadastre_by_address | Finds the matrikkel number for one or many addresses, even with spelling mistakes. | "Which property is at Storgata 1 in Oslo?" |
search_place | Finds places without a street address, for example a village, a wharf or a hill. | "Where is Aker Brygge?" |
resolve_area | Turns a municipality, county or district name into a code you can use in searches. | "Find all properties in the Grünerløkka district." |
Companies and ownership
| Tool | What it does | Example |
|---|---|---|
lookup_company_brreg | Finds the organisation number for a company name in Enhetsregisteret (the Norwegian register of legal entities). | "What is the organisation number of Selvaag Bolig?" |
company_dossier | Fetches a combined overview of one or more companies: status, roles, sub-units and accounts. | "Write a short company analysis of the owner." |
render_ownership_tree | Draws the ownership tree from the ultimate owner down to the company that owns the property. | "Draw the ownership structure behind the owner of the property." |
get_tenant_panel | Gives a combined tenant analysis for one property, with the companies that rent there. | "Who rents at 0301-208-494-0-0, and how financially sound are they?" |
get_aarsregnskap_pdf | Fetches the annual accounts as a PDF from Regnskapsregisteret (the Norwegian register of annual accounts). | "Fetch the latest annual accounts for the tenant." |
get_ownership_lookup_codes | Explains the codes in the shareholder, owner and transaction data. | |
get_company_shareholders_years | Shows which years we have shareholder data for a company. | "Which years do you have shareholder lists for the company?" |
get_company_shareholders | Lists the shareholders in one or more companies for a given year, from the shareholder register. | "Who owned the shares in the company in 2024?" |
get_company_shareholders_history | Shows how the shareholders in a company have changed over the years. | "When did the current main owner come in?" |
get_company_ownership_chain | Follows the ownership chain up to the ultimate owner, or down to the subsidiaries. | "Who really owns this property company?" |
get_company_property_holdings | Finds all properties a company controls, including through subsidiaries. | "Which properties does the group control through its subsidiaries?" |
get_company_roles | Lists the board, chief executive, auditor and other roles in a company, including former roles. | "Who is on the board, and who is the auditor?" |
get_companies_by_role_holder | Finds the companies where a specific company is auditor, accountant or business manager. | "Which property companies use this business manager?" |
get_person_roles | Shows which roles a person has in different companies. | "Which other companies does the chief executive sit on the board of?" |
search_companies | Finds companies by industry, location, size, status and similar. | "Find property companies in Rogaland with more than 50 employees." |
get_company_document | Fetches everything we have about one company: identity, status, accounts, group, roles and properties. | "Tell me about Selvaag Bolig ASA." |
Land register (Grunnboken) and ownership changes
| Tool | What it does | Example |
|---|---|---|
get_property_transactions | Shows registered ownership changes for a property, with date, price and type of transfer. | "When was the property last sold, and at what price?" |
get_property_transaction_buyers | Shows who bought in a specific ownership change, with ownership shares. | "Who bought the property in 2021?" |
get_property_transaction_sellers | Shows who sold in a specific ownership change. | "Who sold the property in 2021?" |
get_grunnbokutskrift | Fetches the extract from Grunnboken from Kartverket, with mortgages, easements, encumbrances and title history. | "Are there registered mortgages or easements on the property?" |
Land-use plans and zoning
| Tool | What it does | Example |
|---|---|---|
search_plans | Finds land-use plans in an area, or by name, status and purpose. | "Which zoning plans are in progress in Bjørvika?" |
get_plan | Fetches the details for one land-use plan, with purposes and a link to the plan viewer. | "What are the purposes in this zoning plan?" |
find_plan_filter_values | Finds the codes for land-use purposes, plan status, consideration zones and similar. | "What is the code for the land-use purpose combined buildings and facilities?" |
get_plan_documents | Lists the plan documents for a plan: provisions, plan map, plan description and decisions. | "Which documents exist for the plan?" |
fetch_plan_document | Fetches one plan document as a PDF, so the agent can read it. | "Read the provisions for the plan." |
get_plan_coverage | Shows which plan data a municipality has published. | "Has Asker published its zoning plans digitally?" |
get_plan_coverage_geometry | Gives the area a municipality's plans cover, as a basis for finding unzoned areas. | "Which parts of the municipality are not zoned?" |
get_property_plans | Shows which plans apply to one property: zoning, municipal master plan, proposals and plan initiation. | "What is 0301-208-494-0-0 zoned for?" |
render_plan_map | Draws the plan map for a plan in the same purpose colours as the municipality's plan viewer. | "Show the plan map with the property marked." |
get_plan_dossier | Runs the full plan check for one property in one call: the plans, the documents and the key points from the provisions. | "Write a zoning review for the property." |
Map layers, risk and aerial photos
| Tool | What it does | Example |
|---|---|---|
list_map_layer_services | Lists the map layer services we have, from NVE, DIBK, Miljødirektoratet and Geodata, among others. | "Which map layers do you have?" |
search_map_layers | Searches for map layers by topic, for example flooding, noise or wildlife corridors. | "Do you have map layers for quick clay?" |
get_map_layer_service | Shows the layers in one map layer service. | "Which layers does the NVE flood service have?" |
get_map_layer | Shows the fields in one map layer, so the agent interprets the values correctly. | |
find_map_layer_filter_values | Finds the codes a map layer uses, so the agent can filter on them. | |
map_layer_intersects | Quickly checks which map layers have data at a location. | "Which map layers cover this plot?" |
map_layer_risk_sweep | Checks all hazard and environment layers around a property: landslides, quick clay, flooding, contaminated ground, cultural heritage sites, protected areas and more. | "Is there any natural hazard or environmental risk on the property?" |
map_layer_lookup | Fetches the information the map layers have at one or more locations. | "What does the flood zone map say about this address?" |
query_map_layer | Fetches rows from one map layer with your own filters, with or without a location. | "Find all hotels within 1 km of Oslo S." |
find_neighbours | Finds the neighbouring properties of one or more properties. | "Who are the neighbours of 0301-208-494-0-0?" |
render_map_layer_image | Draws one or more map layers as an image that can be placed over a map. | "Create an image of the flood zones around the property." |
list_imagery_projects | Shows which historical aerial photos exist for a location. | "Which aerial photos are there of Fornebu?" |
render_imagery | Shows one historical aerial photo. | "Show the oldest aerial photo of the plot." |
render_static_map_with_layers | Creates a map with a satellite image as the base and map layers on top. | "Show the flood zones over a satellite image of the property." |
Maps, places and traffic
| Tool | What it does | Example |
|---|---|---|
geocode_address | Finds the coordinates for an address that is not in the property data. | "Where is this address on the map?" |
reverse_geocode | Finds the nearest address to a point. | "Which address is nearest to this point?" |
search_poi | Finds shops, schools and other places by name in an area. | "Where is the nearest Rema 1000?" |
search_poi_category | Finds all places of one type in an area, for example schools or hospitals. | "Which nurseries are within 1 km?" |
list_poi_categories | Lists the place types you can use in the category search. | |
render_static_map | Creates a map image with markers, plot boundaries and lines. | "Create a map with the properties marked." |
get_traffic_flow | Shows the current traffic at a point, compared with normal speed. | "Is there a queue on the E18 at Lysaker now?" |
get_traffic_flow_along_route | Shows the current traffic along a route. | "How heavy is the traffic on the road to the airport now?" |
get_traffic_incidents | Shows accidents, roadworks and closed roads in an area. | "Are there roadworks around Lysaker now?" |
map_view | Creates an interactive map with properties, a legend and a popup for each property. | "Show all warehouse buildings in Akershus on a map." |
list_base_map_styles | Lists the base maps you can use in map images. |
Travel time
| Tool | What it does | Example |
|---|---|---|
traveltime_directions | Calculates the route and travel time between two places by car, bicycle, on foot or by public transport. | "How long does it take by public transport from the property to Oslo S?" |
traveltime_isochrone | Draws the area you can reach within a given travel time. | "How far can you get in 15 minutes by bicycle?" |
traveltime_matrix | Calculates travel time from many starting points to many destinations. | "Which of these properties is closest to the nearest school?" |
traveltime_reachable_grid | Creates a grid of where you can reach within a travel time, as a basis for heat maps. | "How many properties are within 30 minutes of Oslo S by public transport?" |
traveltime_capabilities | Shows which modes of travel are supported, and how to use the travel tools. |
Reports and brand
| Tool | What it does | Example |
|---|---|---|
get_brand_assets | Fetches Placepoint's colours, logo and typography for reports and presentations. | "Create the report in Placepoint's brand style." |
report_recipe | Gives the recipe for reports, presentations, one-pagers and dashboards. | "Create a report about the property." |
pre_writing_check | Checks that the agent has fetched what it needs before it writes a report. | |
render_bar_chart | Draws a bar chart in Placepoint's brand style. | "Show the ten largest owners as a chart." |
render_kpi_strip | Creates a row of key figures in Placepoint's brand style. | "Show the key figures at the top of the report." |
cover_layout_guide | Gives the placement of the elements on a report cover page. | |
cover_metadata_block | Fetches facts for the title and footer on a report cover page. | |
render_brand_background | Creates the background image for a report cover page. | |
get_cover_pack | Creates everything needed for a report cover page, with a satellite image of the property. | "Create a cover page for the report about the property." |
Geometry
| Tool | What it does | Example |
|---|---|---|
geo_buffer | Creates an area around a point, a line or a polygon, for example 500 metres around an address. | "Which properties are within 200 metres of the station?" |
geo_union | Merges several areas into one. | "Merge the areas around all the stations." |
geo_intersect | Finds the overlap between two areas. | "Which part of the area is in Oslo municipality?" |
geo_difference | Subtracts one area from another. | "Which development areas in the municipal master plan are not zoned yet?" |
geo_simplify | Simplifies an area with many points, so it can be used in searches. | |
geo_bbox_of | Finds the rectangle that encloses an area. | |
geo_to_odata_filter | Turns an area into a search filter for properties. |
Placepoint Dataset MCP
Address: https://mcp-dataset.placepoint.no. 66 tools.
Projects and datasets
| Tool | What it does | Example |
|---|---|---|
get_mcp_context | Shows who you are logged in as and which project is active. Always leave it on. | |
get_usage_guide | The usage guide that tells the agent how to use the other tools. Always leave it on. | |
get_tool_help | Detailed help for individual tools, which the agent fetches when needed. Always leave it on. | |
list_projects | Lists the projects you have access to. | "Which projects do I have?" |
list_projects_with_datasets | Lists your projects with the datasets in each of them. | "Which datasets do I have, and in which projects?" |
search_datasets | Searches for datasets by name and description across all your projects. | "Find the dataset with the leads from the trade fair." |
create_project | Creates a new project, private or shared with your team. | "Create a new project for the client, shared with the team." |
get_project | Shows the details for one project, with who it is shared with. | "Who has access to the project?" |
update_project | Changes the name, description or type of a project. | "Give the project a new name." |
delete_project | Deletes a project, after you have confirmed it. | "Delete the old test project." |
share_project_with_tenant | Shares a project with your whole team at a chosen level. | "Share the project with the team with read access." |
set_active_project | Selects which project is active. | "Switch to the project for the client." |
grant_project_access | Gives one person access to a project. | "Give Anders edit access to the project." |
revoke_project_access | Removes access for a person or a team. | "Remove Anders's access." |
list_tenant_members | Lists the members of your team. | "Who is in my team?" |
list_datasets | Lists the datasets in one project. | "Which datasets are in the project?" |
get_dataset | Shows the details for one dataset. | "Which columns and settings does the dataset have?" |
create_dataset | Creates a dataset, including with content the agent has created itself. | "Create a dataset with these ten addresses." |
update_dataset | Changes the name, description and settings of a dataset. | "Give the dataset a better description." |
delete_dataset | Deletes a dataset. | "Delete the dataset with test data." |
list_dataset_rows | Lists the rows in a dataset, with filters. | "Show the rows with the status 'new'." |
count_dataset_rows | Counts the rows in a dataset that match a filter. | "How many rows have no address?" |
update_dataset_row_attributes | Sets the same value in one column for many rows. | "Set the status to 'contacted' for all rows in Bergen." |
update_dataset_rows | Sets individual values in several columns for many rows. | "Fill in the height for each of these mountain peaks." |
delete_dataset_rows | Deletes rows in a dataset. | "Delete the duplicate rows." |
get_dataset_features | Fetches the rows as map features with geometry. | "Fetch the points in the dataset as GeoJSON." |
upsert_dataset_features | Adds or changes rows with geometry and values. | "Move the point for row 12 to the correct address." |
get_dataset_columns | Shows the columns in a dataset. | "Which columns does the dataset have?" |
update_dataset_columns | Replaces the whole column setup for a dataset. | |
add_dataset_column | Adds a new column to a dataset. | "Add a column for comments." |
set_dataset_column_visibility | Shows or hides columns in the table, without changing the data. | "Hide the columns with internal codes." |
promote_dataset | Finalises a new dataset, so it appears in Placepoint Fusion. | |
export_dataset | Creates an Excel, CSV or GeoJSON file with the dataset. | "Give me the dataset as Excel." |
copy_dataset | Copies a dataset to another project. | "Copy the dataset to the client project." |
Upload files
| Tool | What it does | Example |
|---|---|---|
create_upload | Creates a link you can upload an Excel, CSV or GeoJSON file to. | "I want to upload an Excel file with addresses." |
inspect_upload | Reads an uploaded file and suggests how to interpret the columns. | |
ingest_upload | Creates a dataset from an uploaded file, and links the rows to properties. | "Create a dataset from the file I uploaded." |
update_dataset_from_upload | Updates an existing dataset from an uploaded file. | "Update the dataset with the new figures in the file." |
delete_upload | Deletes an uploaded file. |
Linking to properties
| Tool | What it does | Example |
|---|---|---|
set_dataset_matching | Selects how the rows in a dataset are linked to properties, by address or matrikkel number. | "Link the rows to properties using the address column." |
rerun_dataset_matching | Links the rows in a dataset to properties again. | "Run the linking to properties again." |
get_dataset_matching_log | Shows how many rows were linked to properties, and which ones were not. | "Which rows did you not find a property for?" |
Map style
| Tool | What it does | Example |
|---|---|---|
update_dataset_style | Changes how a dataset looks on the map: colours, sizes and categories. | "Colour the points by status." |
get_dataset_style | Shows how a dataset is styled on the map at the moment. | "How is the dataset styled now?" |
Icons
| Tool | What it does | Example |
|---|---|---|
list_icons | Lists the icons you can use on points: the standard pins and your team's own icons. | "Which icons can I use?" |
create_icon_upload | Creates a link you can upload your own icon to. | "I want to upload our logo as an icon." |
import_icon | Adds an icon to your team's icon library. | |
delete_icon | Removes an icon from your team's icon library. | "Remove the old icon." |
Administrative areas
| Tool | What it does | Example |
|---|---|---|
list_area_types | Lists the available area types: municipalities, counties, postcodes, grunnkretser (basic statistical units), districts and more. | "Which area types can I use?" |
search_areas | Finds areas by name or code, without geometry. | "Which postcodes are there in Bærum?" |
add_areas_to_dataset | Adds areas to a dataset, for example all grunnkretser in a municipality. | "Create a dataset with all the districts in Oslo." |
aggregate_dataset_by_area | Counts or sums the rows in a dataset per area. | "How many of my leads are in each municipality?" |
get_area_geometry | Fetches the outline of up to 25 areas. | |
export_areas | Creates a GeoJSON file with areas, for use outside Placepoint. | "Give me the grunnkretser in Trondheim as GeoJSON." |
Travel time
| Tool | What it does | Example |
|---|---|---|
traveltime_capabilities | Shows which modes of travel and limits apply to the travel tools. | |
traveltime_isochrone | Draws the area you can reach within a travel time or distance, and can save it as a dataset. | "Save the area you can reach in 20 minutes by car as a dataset." |
traveltime_directions | Calculates the route and travel time between two places, and can save the route as a dataset. | "How long does it take to drive between the warehouses?" |
traveltime_matrix | Calculates travel time from many starting points to many destinations. | "Which shop has the shortest driving time from each warehouse?" |
traveltime_optimize_route | Finds the fastest order in which to visit many places. | "In what order should I visit the customers in this dataset?" |
Geometry
| Tool | What it does | Example |
|---|---|---|
geo_buffer | Creates an area around a point, a line or a polygon. | "Create an area of 500 metres around each point." |
geo_union | Merges several areas into one. | "Merge the areas into one." |
geo_intersect | Finds the overlap between two areas. | "Which part of the area is in the municipality?" |
geo_difference | Subtracts one area from another. | "What is left of the area when we subtract the protected area?" |
geo_simplify | Simplifies an area with many points. | |
geo_bbox_of | Finds the rectangle that encloses an area. | |
geo_measure | Measures the area or length of a geometry. | "How large is the area in m²?" |



