TAP lets you upload your own tables into the server for the duration of the query.
Note that not all servers already support uploads. If one doesn’t, politely ask the operators for it.
Example: Add proper motions to an object catalog giving positions reasonably close to J2000; grab some table, e.g., ex.vot from the HTML version of this page, load it into TOPCAT, go to the TAP window and there say:
SELECT mine.*, ppmxl.pmra, ppmxl.pmde FROM ppmxl.main AS ppmxl JOIN tap_upload.t1 AS mine ON (1=CONTAINS( POINT('ICRS', ppmxl.raj2000, ppmxl.dej2000), CIRCLE('ICRS', mine.raj2000, mine.dej2000, 0.001 )))
You must replace the 1 in tap_upload.t1 with the index of the table you want to match.
You may also need to adjust the column names of RA and Dec for your table, and the match radius.
If your positions are in galactic coordinates, things should work if you just write GALACTIC rather than ICRS in the CIRCLE.
If you have some data of your own, try getting it into TOPCAT and try this with it (but that’s really more of a TOPCAT problem).